diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ea793fd0..25dd9098 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,7 +35,7 @@ jobs: # # * Build and test with all combinations of OS/GHC/Cabal, but with a fixed # Botan version, preferably the latest version which is currently - # Botan-3.9.0. + # Botan-3.10.0. # # * Build and test with all Botan versions, but with a fixed OS/GHC/Cabal # combination, preferably Linux/GHC-9.6/Cabal-3.16 @@ -58,12 +58,16 @@ jobs: - { os: macos-latest, shell: bash } ghc-version: ["9.2", "9.4", "9.6", "9.8", "9.10", "9.12"] cabal-version: ["3.16"] - botan-version: ["3.9.0"] + botan-version: ["3.10.0"] include: - sys: { os: ubuntu-latest, shell: bash } 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,18 +88,34 @@ 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.16" + botan-version: "3.9.0" steps: - name: ๐Ÿ“ฅ Checkout repository @@ -200,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 @@ -295,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/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 3ad6e95d..0f206ab6 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -54,7 +54,7 @@ jobs: # wrong with the setup-botan action. Maybe it's compiling too many things? timeout-minutes: 30 with: - botan-version: 3.9.0 + botan-version: 3.10.0 - name: ๐Ÿ› ๏ธ Configure run: | diff --git a/botan-bindings/KnownVersions.cfg b/botan-bindings/KnownVersions.cfg new file mode 100644 index 00000000..304447e1 --- /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 00000000..82fcb413 --- /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 62aa5cdf..0f50d9d3 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.1.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/haskellfoundation/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: @@ -71,10 +78,6 @@ common language library import: warnings, language hs-source-dirs: src - default-extensions: - NoImplicitPrelude - OverloadedStrings - exposed-modules: Botan.Bindings.Bcrypt Botan.Bindings.BlockCipher @@ -87,7 +90,6 @@ library Botan.Bindings.KeyWrap Botan.Bindings.MAC Botan.Bindings.MPI - Botan.Bindings.Prelude Botan.Bindings.PubKey Botan.Bindings.PubKey.DH Botan.Bindings.PubKey.DSA @@ -114,8 +116,6 @@ library Botan.Bindings.X509 Botan.Bindings.ZFEC - other-modules: Paths_botan_bindings - autogen-modules: Paths_botan_bindings build-depends: base >=4.16 && <4.22 includes: botan/ffi.h @@ -124,3 +124,32 @@ library pkgconfig-depends: botan-3 >=3.0.0 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 00000000..14249414 --- /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 00000000..c426cb3c --- /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 00000000..69952a62 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# 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.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:__ @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 + +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' + +__defined at:__ @botan\/ffi.h:110:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:119:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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_Deref + } + 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_Deref + + 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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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 + +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:__ @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:__ @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:__ @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:__ @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:__ @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 00000000..f6dd4143 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/FunPtr.hs @@ -0,0 +1,8191 @@ +{-# 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 00000000..3cb7fc0f --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Safe.hs @@ -0,0 +1,12081 @@ +{-# 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 00000000..9cbdea91 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Unsafe.hs @@ -0,0 +1,12081 @@ +{-# 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 00000000..98479639 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0.hs @@ -0,0 +1,1705 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# 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.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:__ @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 + +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' + +__defined at:__ @botan\/ffi.h:161:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:170:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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_Deref + } + 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_Deref + + 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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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 + +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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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 00000000..b61248d5 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/FunPtr.hs @@ -0,0 +1,10352 @@ +{-# 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 00000000..222d8f7d --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Safe.hs @@ -0,0 +1,15182 @@ +{-# 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 00000000..b6998bf3 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Unsafe.hs @@ -0,0 +1,15182 @@ +{-# 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 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_822313984ec94c99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_b9e363f607e3f69a" hs_bindgen_b9e363f607e3f69a :: + 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_b9e363f607e3f69a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_4d45a2e3ed697aba" hs_bindgen_4d45a2e3ed697aba :: + 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_4d45a2e3ed697aba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_abe1dd2cd91b7f85" hs_bindgen_abe1dd2cd91b7f85 :: + 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_abe1dd2cd91b7f85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_aeff6820e102062d" hs_bindgen_aeff6820e102062d :: + 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_aeff6820e102062d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_1c0c86bae173047e" hs_bindgen_1c0c86bae173047e :: + 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_1c0c86bae173047e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_82ca7d09d6ec0225" hs_bindgen_82ca7d09d6ec0225 :: + 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_82ca7d09d6ec0225 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_0dfdd4326bbb80a0" hs_bindgen_0dfdd4326bbb80a0 :: + 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_0dfdd4326bbb80a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_947047aeadbb73e1" hs_bindgen_947047aeadbb73e1 :: + 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_947047aeadbb73e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_92e0b8a6efa25752" hs_bindgen_92e0b8a6efa25752 :: + 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_92e0b8a6efa25752 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_322f1ce348f2c8ab" hs_bindgen_322f1ce348f2c8ab :: + 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_322f1ce348f2c8ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_aab8542b3e7c0cb9" hs_bindgen_aab8542b3e7c0cb9 :: + 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_aab8542b3e7c0cb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_e23e22aea7157085" hs_bindgen_e23e22aea7157085 :: + 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_e23e22aea7157085 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_57fa6bc7b0a19a55" hs_bindgen_57fa6bc7b0a19a55 :: + 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_57fa6bc7b0a19a55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_ad4efdfda6c2c8e4" hs_bindgen_ad4efdfda6c2c8e4 :: + 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_ad4efdfda6c2c8e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_27f0db949f743e63" hs_bindgen_27f0db949f743e63 :: + 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_27f0db949f743e63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_2801d43c2ca064f6" hs_bindgen_2801d43c2ca064f6 :: + 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_2801d43c2ca064f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_971917c680501585" hs_bindgen_971917c680501585 :: + 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_971917c680501585 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_d82ca6208d204fb8" hs_bindgen_d82ca6208d204fb8 :: + 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_d82ca6208d204fb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_e677d22e68f9e030" hs_bindgen_e677d22e68f9e030 :: + 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_e677d22e68f9e030 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_f9eccf2a8be964b7" hs_bindgen_f9eccf2a8be964b7 :: + 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_f9eccf2a8be964b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_95d5eb814a1acaa9" hs_bindgen_95d5eb814a1acaa9 :: + 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_95d5eb814a1acaa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_a3209b33625cbead" hs_bindgen_a3209b33625cbead :: + 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_a3209b33625cbead + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_3fb044b5c17d2925" hs_bindgen_3fb044b5c17d2925 :: + 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_3fb044b5c17d2925 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_722454ee544bf5d9" hs_bindgen_722454ee544bf5d9 :: + 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_722454ee544bf5d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_161228eb25aef37b" hs_bindgen_161228eb25aef37b :: + 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_161228eb25aef37b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2605efe2d8c85d78" hs_bindgen_2605efe2d8c85d78 :: + 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_2605efe2d8c85d78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_9a5304d3a238a911" hs_bindgen_9a5304d3a238a911 :: + 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_9a5304d3a238a911 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_92f283ec0d292926" hs_bindgen_92f283ec0d292926 :: + 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_92f283ec0d292926 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_c7b76e3279347295" hs_bindgen_c7b76e3279347295 :: + 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_c7b76e3279347295 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_a48e7fa7de41b8ee" hs_bindgen_a48e7fa7de41b8ee :: + 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_a48e7fa7de41b8ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_2bc8ed13d5687e90" hs_bindgen_2bc8ed13d5687e90 :: + 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_2bc8ed13d5687e90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_0f430ff125cdb528" hs_bindgen_0f430ff125cdb528 :: + 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_0f430ff125cdb528 + +{-| 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_0f430ff125cdb528 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_35b18a7495abcaa8" hs_bindgen_35b18a7495abcaa8 :: + 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_35b18a7495abcaa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_4f4acf371847561d" hs_bindgen_4f4acf371847561d :: + 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_4f4acf371847561d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_ed49a199c0b27833" hs_bindgen_ed49a199c0b27833 :: + 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_ed49a199c0b27833 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_47e8e0c418c5f7d3" hs_bindgen_47e8e0c418c5f7d3 :: + 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_47e8e0c418c5f7d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_2f9c99af3a3d9d8f" hs_bindgen_2f9c99af3a3d9d8f :: + 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_2f9c99af3a3d9d8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_3c637788f1e89eb7" hs_bindgen_3c637788f1e89eb7 :: + 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_3c637788f1e89eb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_475a1a5acb713bd9" hs_bindgen_475a1a5acb713bd9 :: + 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_475a1a5acb713bd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_64212b24d061b213" hs_bindgen_64212b24d061b213 :: + 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_64212b24d061b213 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_93dd5055e581846c" hs_bindgen_93dd5055e581846c :: + 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_93dd5055e581846c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_23394a04cdac4963" hs_bindgen_23394a04cdac4963 :: + 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_23394a04cdac4963 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_a0f5f2189b435c24" hs_bindgen_a0f5f2189b435c24 :: + 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_a0f5f2189b435c24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_0710ffd9adac0fc9" hs_bindgen_0710ffd9adac0fc9 :: + 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_0710ffd9adac0fc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_2b0ead574c5f47e8" hs_bindgen_2b0ead574c5f47e8 :: + 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_2b0ead574c5f47e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_72238358fdc71db9" hs_bindgen_72238358fdc71db9 :: + 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_72238358fdc71db9 + +{-| __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_72238358fdc71db9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_3f42597e7b666c0f" hs_bindgen_3f42597e7b666c0f :: + 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_3f42597e7b666c0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_77d85b1fbb1a00a9" hs_bindgen_77d85b1fbb1a00a9 :: + 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_77d85b1fbb1a00a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d6f546d860e3149b" hs_bindgen_d6f546d860e3149b :: + 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_d6f546d860e3149b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_b87a9a7182c9aeed" hs_bindgen_b87a9a7182c9aeed :: + 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_b87a9a7182c9aeed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_25d8a86f629da5a4" hs_bindgen_25d8a86f629da5a4 :: + 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_25d8a86f629da5a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_e6985c2f92f18450" hs_bindgen_e6985c2f92f18450 :: + 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_e6985c2f92f18450 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_f6680c1b5ca3efe2" hs_bindgen_f6680c1b5ca3efe2 :: + 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_f6680c1b5ca3efe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_b69623f557069359" hs_bindgen_b69623f557069359 :: + 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_b69623f557069359 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_631ac1b5597a644c" hs_bindgen_631ac1b5597a644c :: + 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_631ac1b5597a644c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_10b7c4463b44f7b6" hs_bindgen_10b7c4463b44f7b6 :: + 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_10b7c4463b44f7b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_8bfbff66f2592732" hs_bindgen_8bfbff66f2592732 :: + 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_8bfbff66f2592732 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_8e791adea9aefe20" hs_bindgen_8e791adea9aefe20 :: + 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_8e791adea9aefe20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_1eb0746275eed66d" hs_bindgen_1eb0746275eed66d :: + 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_1eb0746275eed66d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_d37064638ec02a92" hs_bindgen_d37064638ec02a92 :: + 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_d37064638ec02a92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_558011478d9f2e1e" hs_bindgen_558011478d9f2e1e :: + 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_558011478d9f2e1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_6812026c663fde62" hs_bindgen_6812026c663fde62 :: + 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_6812026c663fde62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_8edc46c9161a929e" hs_bindgen_8edc46c9161a929e :: + 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_8edc46c9161a929e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_324d936663dc61dc" hs_bindgen_324d936663dc61dc :: + 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_324d936663dc61dc + +{-| __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_324d936663dc61dc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_7b270b71e8e01c53" hs_bindgen_7b270b71e8e01c53 :: + 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_7b270b71e8e01c53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_9bfe46a8d033bea3" hs_bindgen_9bfe46a8d033bea3 :: + 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_9bfe46a8d033bea3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_45b115be620778aa" hs_bindgen_45b115be620778aa :: + 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_45b115be620778aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_3de7187914e51427" hs_bindgen_3de7187914e51427 :: + 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_3de7187914e51427 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_54d23c1a3a3a4930" hs_bindgen_54d23c1a3a3a4930 :: + 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_54d23c1a3a3a4930 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_839bf0f3e0a59aa5" hs_bindgen_839bf0f3e0a59aa5 :: + 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_839bf0f3e0a59aa5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_c98631d3f8e9a284" hs_bindgen_c98631d3f8e9a284 :: + 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_c98631d3f8e9a284 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_387401801d53635b" hs_bindgen_387401801d53635b :: + 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_387401801d53635b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_cd9c0c6b2bb13faa" hs_bindgen_cd9c0c6b2bb13faa :: + 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_cd9c0c6b2bb13faa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_3e92d5e3d8177aa8" hs_bindgen_3e92d5e3d8177aa8 :: + 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_3e92d5e3d8177aa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_09c7eaefe9f0a114" hs_bindgen_09c7eaefe9f0a114 :: + 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_09c7eaefe9f0a114 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_69d82477c195b8ca" hs_bindgen_69d82477c195b8ca :: + 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_69d82477c195b8ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_331ab6afaba654c7" hs_bindgen_331ab6afaba654c7 :: + 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_331ab6afaba654c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_1c7fd6fb26c7cfbd" hs_bindgen_1c7fd6fb26c7cfbd :: + 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_1c7fd6fb26c7cfbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_e28812e322f44c1b" hs_bindgen_e28812e322f44c1b :: + 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_e28812e322f44c1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_4f21e9696703b858" hs_bindgen_4f21e9696703b858 :: + 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_4f21e9696703b858 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_2b2c09e006fef1ba" hs_bindgen_2b2c09e006fef1ba :: + 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_2b2c09e006fef1ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_892222e325898a8c" hs_bindgen_892222e325898a8c :: + 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_892222e325898a8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_6766a7758227b07a" hs_bindgen_6766a7758227b07a :: + 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_6766a7758227b07a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_bd82fc341f3ec400" hs_bindgen_bd82fc341f3ec400 :: + 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_bd82fc341f3ec400 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_f63b37e21ba88b90" hs_bindgen_f63b37e21ba88b90 :: + 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_f63b37e21ba88b90 + +{-| __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_f63b37e21ba88b90 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_2f90a0f8391c554d" hs_bindgen_2f90a0f8391c554d :: + 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_2f90a0f8391c554d + +{-| __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_2f90a0f8391c554d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_794c4955352a6f36" hs_bindgen_794c4955352a6f36 :: + 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_794c4955352a6f36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_c9944aef0023846b" hs_bindgen_c9944aef0023846b :: + 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_c9944aef0023846b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_6550e1fdbff8b30d" hs_bindgen_6550e1fdbff8b30d :: + 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_6550e1fdbff8b30d + +{-| __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_6550e1fdbff8b30d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_773b94d4c006e68a" hs_bindgen_773b94d4c006e68a :: + 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_773b94d4c006e68a + +{-| __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_773b94d4c006e68a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_28e0806f96bed1fb" hs_bindgen_28e0806f96bed1fb :: + 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_28e0806f96bed1fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_10f5cb41a041ed4a" hs_bindgen_10f5cb41a041ed4a :: + 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_10f5cb41a041ed4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_7e16b427df821d47" hs_bindgen_7e16b427df821d47 :: + 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_7e16b427df821d47 + +{-| __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_7e16b427df821d47 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_d985bea6feb8a8ac" hs_bindgen_d985bea6feb8a8ac :: + 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_d985bea6feb8a8ac + +{-| __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_d985bea6feb8a8ac x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_d2a11f69db05b224" hs_bindgen_d2a11f69db05b224 :: + 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_d2a11f69db05b224 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_bbfc1a4a74458c0b" hs_bindgen_bbfc1a4a74458c0b :: + 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_bbfc1a4a74458c0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_ae3696a5d7556b10" hs_bindgen_ae3696a5d7556b10 :: + 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_ae3696a5d7556b10 + +{-| __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_ae3696a5d7556b10 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_c0776d662e8e8f88" hs_bindgen_c0776d662e8e8f88 :: + 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_c0776d662e8e8f88 + +{-| __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_c0776d662e8e8f88 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_5586361bff297d98" hs_bindgen_5586361bff297d98 :: + 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_5586361bff297d98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3db95844f36fa8b2" hs_bindgen_3db95844f36fa8b2 :: + 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_3db95844f36fa8b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_91b6676b50725d88" hs_bindgen_91b6676b50725d88 :: + 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_91b6676b50725d88 + +{-| __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_91b6676b50725d88 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_382e6754646c0c83" hs_bindgen_382e6754646c0c83 :: + 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_382e6754646c0c83 + +{-| __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_382e6754646c0c83 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_13e7ceeb3b9433d7" hs_bindgen_13e7ceeb3b9433d7 :: + 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_13e7ceeb3b9433d7 + +{-| __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_13e7ceeb3b9433d7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_71df31c4cef40a55" hs_bindgen_71df31c4cef40a55 :: + 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_71df31c4cef40a55 + +{-| __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_71df31c4cef40a55 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_54bb3e2c808494f9" hs_bindgen_54bb3e2c808494f9 :: + 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_54bb3e2c808494f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_5d6e437b7eb9008b" hs_bindgen_5d6e437b7eb9008b :: + 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_5d6e437b7eb9008b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_a954994df21f7d34" hs_bindgen_a954994df21f7d34 :: + 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_a954994df21f7d34 + +{-| 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_a954994df21f7d34 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_c735ad55bebd645e" hs_bindgen_c735ad55bebd645e :: + 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_c735ad55bebd645e + +{-| __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_c735ad55bebd645e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_bccb9ff649e6b9f4" hs_bindgen_bccb9ff649e6b9f4 :: + 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_bccb9ff649e6b9f4 + +{-| 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_bccb9ff649e6b9f4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_eaf31b4a8f57ac73" hs_bindgen_eaf31b4a8f57ac73 :: + 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_eaf31b4a8f57ac73 + +{-| __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_eaf31b4a8f57ac73 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_73d328bd93f51009" hs_bindgen_73d328bd93f51009 :: + 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_73d328bd93f51009 + +{-| __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_73d328bd93f51009 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_e22dc2c9c3efd696" hs_bindgen_e22dc2c9c3efd696 :: + 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_e22dc2c9c3efd696 + +{-| __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_e22dc2c9c3efd696 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_52ba1d50a92214c4" hs_bindgen_52ba1d50a92214c4 :: + 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_52ba1d50a92214c4 + +{-| __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_52ba1d50a92214c4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_65abb68540763e1a" hs_bindgen_65abb68540763e1a :: + 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_65abb68540763e1a + +{-| __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_65abb68540763e1a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_205fbbddada2b6d8" hs_bindgen_205fbbddada2b6d8 :: + 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_205fbbddada2b6d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_e24f857843227e53" hs_bindgen_e24f857843227e53 :: + 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_e24f857843227e53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_c9429e901038a4a4" hs_bindgen_c9429e901038a4a4 :: + 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_c9429e901038a4a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ecdsa_sec1@ +foreign import ccall unsafe "hs_bindgen_3bddb7871a5e5ee2" hs_bindgen_3bddb7871a5e5ee2 :: + 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_3bddb7871a5e5ee2 + +{-| __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_3bddb7871a5e5ee2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_4084b19d33f93fe7" hs_bindgen_4084b19d33f93fe7 :: + 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_4084b19d33f93fe7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_ecdh_sec1@ +foreign import ccall unsafe "hs_bindgen_9a427e5307566da1" hs_bindgen_9a427e5307566da1 :: + 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_9a427e5307566da1 + +{-| __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_9a427e5307566da1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_310d31ebf2dc2485" hs_bindgen_310d31ebf2dc2485 :: + 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_310d31ebf2dc2485 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_d5aa10595d29bc4c" hs_bindgen_d5aa10595d29bc4c :: + 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_d5aa10595d29bc4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_sm2_sec1@ +foreign import ccall unsafe "hs_bindgen_d2a91e6423287a28" hs_bindgen_d2a91e6423287a28 :: + 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_d2a91e6423287a28 + +{-| __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_d2a91e6423287a28 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_5138cf7857c1db97" hs_bindgen_5138cf7857c1db97 :: + 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_5138cf7857c1db97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_4781129b75ba8456" hs_bindgen_4781129b75ba8456 :: + 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_4781129b75ba8456 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_70e5589afac7b896" hs_bindgen_70e5589afac7b896 :: + 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_70e5589afac7b896 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_b4f9e6ca55ed5273" hs_bindgen_b4f9e6ca55ed5273 :: + 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_b4f9e6ca55ed5273 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_af49df6a43182a38" hs_bindgen_af49df6a43182a38 :: + 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_af49df6a43182a38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_90cfa35de3bf4335" hs_bindgen_90cfa35de3bf4335 :: + 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_90cfa35de3bf4335 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_0fbae8d2b1830327" hs_bindgen_0fbae8d2b1830327 :: + 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_0fbae8d2b1830327 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_eb7e7b23e2e5cb73" hs_bindgen_eb7e7b23e2e5cb73 :: + 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_eb7e7b23e2e5cb73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_2b86ba88d83657dd" hs_bindgen_2b86ba88d83657dd :: + 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_2b86ba88d83657dd + +{-| __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_2b86ba88d83657dd x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_e416ef739d3fd61d" hs_bindgen_e416ef739d3fd61d :: + 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_e416ef739d3fd61d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_21055ed00b9ec6e7" hs_bindgen_21055ed00b9ec6e7 :: + 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_21055ed00b9ec6e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_c37abd1684dec3e6" hs_bindgen_c37abd1684dec3e6 :: + 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_c37abd1684dec3e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_b126db4f5cf7d080" hs_bindgen_b126db4f5cf7d080 :: + 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_b126db4f5cf7d080 + +{-| __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_b126db4f5cf7d080 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_1a4baf4fe7d5e104" hs_bindgen_1a4baf4fe7d5e104 :: + 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_1a4baf4fe7d5e104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_9a87a8816069d068" hs_bindgen_9a87a8816069d068 :: + 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_9a87a8816069d068 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_4e5806c85bc80f2b" hs_bindgen_4e5806c85bc80f2b :: + 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_4e5806c85bc80f2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_7f6d4ff4ec85eae7" hs_bindgen_7f6d4ff4ec85eae7 :: + 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_7f6d4ff4ec85eae7 + +{-| __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_7f6d4ff4ec85eae7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_96551e580d8aa6de" hs_bindgen_96551e580d8aa6de :: + 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_96551e580d8aa6de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_3c9726911e045534" hs_bindgen_3c9726911e045534 :: + 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_3c9726911e045534 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_3a558c056702ad93" hs_bindgen_3a558c056702ad93 :: + 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_3a558c056702ad93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_8cd241f49e9ab07a" hs_bindgen_8cd241f49e9ab07a :: + 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_8cd241f49e9ab07a + +{-| __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_8cd241f49e9ab07a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_3444727ba118f21f" hs_bindgen_3444727ba118f21f :: + 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_3444727ba118f21f + +{-| __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_3444727ba118f21f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_927108dfbf8483e7" hs_bindgen_927108dfbf8483e7 :: + 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_927108dfbf8483e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_8c1d6b0f9d5198c7" hs_bindgen_8c1d6b0f9d5198c7 :: + 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_8c1d6b0f9d5198c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_d3b4a6b4e47bf39a" hs_bindgen_d3b4a6b4e47bf39a :: + 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_d3b4a6b4e47bf39a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_21211e720cfc64c7" hs_bindgen_21211e720cfc64c7 :: + 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_21211e720cfc64c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_c7600aaa2825741c" hs_bindgen_c7600aaa2825741c :: + 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_c7600aaa2825741c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_60ad449695adef73" hs_bindgen_60ad449695adef73 :: + 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_60ad449695adef73 + +{-| __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_60ad449695adef73 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_faa8c64f770f7a2b" hs_bindgen_faa8c64f770f7a2b :: + 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_faa8c64f770f7a2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_e4935c1b73e3cb47" hs_bindgen_e4935c1b73e3cb47 :: + 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_e4935c1b73e3cb47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_8ed352ef12319dd6" hs_bindgen_8ed352ef12319dd6 :: + 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_8ed352ef12319dd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_cd92f2da12ce7894" hs_bindgen_cd92f2da12ce7894 :: + 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_cd92f2da12ce7894 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_d2f384205f42d038" hs_bindgen_d2f384205f42d038 :: + 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_d2f384205f42d038 + +{-| __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_d2f384205f42d038 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_c259486c289e62eb" hs_bindgen_c259486c289e62eb :: + 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_c259486c289e62eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_d67a1fbcf4f2a587" hs_bindgen_d67a1fbcf4f2a587 :: + 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_d67a1fbcf4f2a587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_cc6201d63e7fc9a1" hs_bindgen_cc6201d63e7fc9a1 :: + 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_cc6201d63e7fc9a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_a652e435b86267bc" hs_bindgen_a652e435b86267bc :: + 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_a652e435b86267bc + +{-| __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_a652e435b86267bc 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_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_b1c2b2d2b96cfc62" hs_bindgen_b1c2b2d2b96cfc62 :: + 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_b1c2b2d2b96cfc62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_40f967ad62f057f2" hs_bindgen_40f967ad62f057f2 :: + 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_40f967ad62f057f2 + +{-| __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_40f967ad62f057f2 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_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_edc80a021628d374" hs_bindgen_edc80a021628d374 :: + 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_edc80a021628d374 + +{-| __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_edc80a021628d374 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_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_6ba2bdfd8e328ab4" hs_bindgen_6ba2bdfd8e328ab4 :: + 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_6ba2bdfd8e328ab4 + +{-| __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_6ba2bdfd8e328ab4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_02eb64a6d7eebd16" hs_bindgen_02eb64a6d7eebd16 :: + 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_02eb64a6d7eebd16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_e5a5ba3e5e81f1ed" hs_bindgen_e5a5ba3e5e81f1ed :: + 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_e5a5ba3e5e81f1ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_f71bfc729e02ff48" hs_bindgen_f71bfc729e02ff48 :: + 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_f71bfc729e02ff48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_6a73485585f1f25d" hs_bindgen_6a73485585f1f25d :: + 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_6a73485585f1f25d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_3c2ff5edd2e28477" hs_bindgen_3c2ff5edd2e28477 :: + 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_3c2ff5edd2e28477 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_dff83779f26e3190" hs_bindgen_dff83779f26e3190 :: + 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_dff83779f26e3190 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_53f402f7cfb4ca7f" hs_bindgen_53f402f7cfb4ca7f :: + 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_53f402f7cfb4ca7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_f9ed6b87926f4629" hs_bindgen_f9ed6b87926f4629 :: + 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_f9ed6b87926f4629 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_dc8fcd278ba24669" hs_bindgen_dc8fcd278ba24669 :: + 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_dc8fcd278ba24669 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_524a4fdfb6e8127c" hs_bindgen_524a4fdfb6e8127c :: + 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_524a4fdfb6e8127c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_0362b23d18b7f3ca" hs_bindgen_0362b23d18b7f3ca :: + 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_0362b23d18b7f3ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_77492aa1d5bc09ea" hs_bindgen_77492aa1d5bc09ea :: + 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_77492aa1d5bc09ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_6736f895fb3f3c42" hs_bindgen_6736f895fb3f3c42 :: + 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_6736f895fb3f3c42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_c087cc09891cb7cd" hs_bindgen_c087cc09891cb7cd :: + 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_c087cc09891cb7cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_9b7647694157e862" hs_bindgen_9b7647694157e862 :: + 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_9b7647694157e862 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_967b4bd2e9fc2981" hs_bindgen_967b4bd2e9fc2981 :: + 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_967b4bd2e9fc2981 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_d9a58508bb919bc2" hs_bindgen_d9a58508bb919bc2 :: + 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_d9a58508bb919bc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_108972e75f59d558" hs_bindgen_108972e75f59d558 :: + 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_108972e75f59d558 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_bb8f93791e95a3cf" hs_bindgen_bb8f93791e95a3cf :: + 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_bb8f93791e95a3cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_af4d21f472b09a06" hs_bindgen_af4d21f472b09a06 :: + 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_af4d21f472b09a06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_1d9cb7fb4bea4655" hs_bindgen_1d9cb7fb4bea4655 :: + 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_1d9cb7fb4bea4655 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_96fe8f9bcdd9018a" hs_bindgen_96fe8f9bcdd9018a :: + 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_96fe8f9bcdd9018a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_a158ec067676123b" hs_bindgen_a158ec067676123b :: + 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_a158ec067676123b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_771bbf6123fc9ab7" hs_bindgen_771bbf6123fc9ab7 :: + 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_771bbf6123fc9ab7 + +{-| __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_771bbf6123fc9ab7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_d3c2c26fdc280347" hs_bindgen_d3c2c26fdc280347 :: + 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_d3c2c26fdc280347 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_dc4fc8153dc8dc39" hs_bindgen_dc4fc8153dc8dc39 :: + 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_dc4fc8153dc8dc39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_f2fa4c161bc859b4" hs_bindgen_f2fa4c161bc859b4 :: + 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_f2fa4c161bc859b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_730b8e3ca69bd18c" hs_bindgen_730b8e3ca69bd18c :: + 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_730b8e3ca69bd18c + +{-| 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_730b8e3ca69bd18c (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_3b6a33607880ee8e" hs_bindgen_3b6a33607880ee8e :: + 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_3b6a33607880ee8e + +{-| __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_3b6a33607880ee8e (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_8390192f7961b0a9" hs_bindgen_8390192f7961b0a9 :: + 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_8390192f7961b0a9 + +{-| __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_8390192f7961b0a9 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_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_638c3bf48d573303" hs_bindgen_638c3bf48d573303 :: + 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_638c3bf48d573303 + +{-| __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_638c3bf48d573303 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_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b9c9d43177252121" hs_bindgen_b9c9d43177252121 :: + 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_b9c9d43177252121 + +{-| 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_b9c9d43177252121 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_0caf03ddd740bd2e" hs_bindgen_0caf03ddd740bd2e :: + 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_0caf03ddd740bd2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_e63da88726d73ea6" hs_bindgen_e63da88726d73ea6 :: + 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_e63da88726d73ea6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_cc3905d27882f244" hs_bindgen_cc3905d27882f244 :: + 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_cc3905d27882f244 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_b8cb03f2e42f23c5" hs_bindgen_b8cb03f2e42f23c5 :: + 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_b8cb03f2e42f23c5 + +{-| 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_b8cb03f2e42f23c5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_fbe2b3b52271522c" hs_bindgen_fbe2b3b52271522c :: + 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_fbe2b3b52271522c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_e4bd8621079e1ccc" hs_bindgen_e4bd8621079e1ccc :: + 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_e4bd8621079e1ccc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_0ee58e8b288e357c" hs_bindgen_0ee58e8b288e357c :: + 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_0ee58e8b288e357c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_3feb4ccb896348f0" hs_bindgen_3feb4ccb896348f0 :: + 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_3feb4ccb896348f0 + +{-| __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_3feb4ccb896348f0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_1bb7a0e9ead567c7" hs_bindgen_1bb7a0e9ead567c7 :: + 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_1bb7a0e9ead567c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_d9586af4fd4535ba" hs_bindgen_d9586af4fd4535ba :: + 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_d9586af4fd4535ba + +{-| __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_d9586af4fd4535ba x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_8e20deda8aeb3c76" hs_bindgen_8e20deda8aeb3c76 :: + 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_8e20deda8aeb3c76 + +{-| __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_8e20deda8aeb3c76 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_ce6f1910cbf5dd88" hs_bindgen_ce6f1910cbf5dd88 :: + 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_ce6f1910cbf5dd88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_b457ab82279eb9e8" hs_bindgen_b457ab82279eb9e8 :: + 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_b457ab82279eb9e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_6c44b621b691c481" hs_bindgen_6c44b621b691c481 :: + 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_6c44b621b691c481 + +{-| 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_6c44b621b691c481 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_26b09fc814d32975" hs_bindgen_26b09fc814d32975 :: + 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_26b09fc814d32975 + +{-| 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_26b09fc814d32975 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_19ea10ae7c3abf58" hs_bindgen_19ea10ae7c3abf58 :: + 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_19ea10ae7c3abf58 + +{-| 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_19ea10ae7c3abf58 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_4ddefec83b033e63" hs_bindgen_4ddefec83b033e63 :: + 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_4ddefec83b033e63 + +{-| 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_4ddefec83b033e63 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_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_1e223d55ae7e4178" hs_bindgen_1e223d55ae7e4178 :: + 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_1e223d55ae7e4178 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_81cda516ea6c2c0f" hs_bindgen_81cda516ea6c2c0f :: + 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_81cda516ea6c2c0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_3fca9737c041741a" hs_bindgen_3fca9737c041741a :: + 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_3fca9737c041741a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_a33a2786df336d7e" hs_bindgen_a33a2786df336d7e :: + 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_a33a2786df336d7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_8664007b1e0c469e" hs_bindgen_8664007b1e0c469e :: + 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_8664007b1e0c469e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_d7555fb12deecb78" hs_bindgen_d7555fb12deecb78 :: + 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_d7555fb12deecb78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_c1cc9c24fb784126" hs_bindgen_c1cc9c24fb784126 :: + 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_c1cc9c24fb784126 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_53a84673f9d94313" hs_bindgen_53a84673f9d94313 :: + 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_53a84673f9d94313 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_d96a887f5638cbbd" hs_bindgen_d96a887f5638cbbd :: + 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_d96a887f5638cbbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_1c5d4321858962f5" hs_bindgen_1c5d4321858962f5 :: + 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_1c5d4321858962f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_3bb7c566e2b80a19" hs_bindgen_3bb7c566e2b80a19 :: + 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_3bb7c566e2b80a19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_763d852c4c19c540" hs_bindgen_763d852c4c19c540 :: + 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_763d852c4c19c540 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_21221ae1c67469d6" hs_bindgen_21221ae1c67469d6 :: + 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_21221ae1c67469d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_ce9285e06a9fc115" hs_bindgen_ce9285e06a9fc115 :: + 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_ce9285e06a9fc115 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0.hs new file mode 100644 index 00000000..ed0e274b --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_1_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:88: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 + +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:89: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:90: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:92: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:93: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:95: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:96: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:98: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:99: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:100: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:101: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:103: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:104: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:105: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:106: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:107: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:108: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:110: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:111: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:113: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:114: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:115: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:117: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:120: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' + +__defined at:__ @botan\/ffi.h:129:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:129: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:138:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:138: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:211:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:246:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:246: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:334:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:334: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:414:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:414: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:510:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:510: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:512: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:513: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:514: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:595: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:777:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:777: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:843:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:843: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1043:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1043: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:1056: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:1126: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:1127:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1257:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1257: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1502:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1502: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1526:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1526: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:1547:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1549:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1549: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1569:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1569: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1588:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1588: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1617: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:1617: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1647: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:1647: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1711:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1711: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1758: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 + +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:1759: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:1760: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:1761: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:1762: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:1763: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:1764: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:1765: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:1766: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:1767: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:1768: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1809:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1809: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1886:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1886: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1918:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1918: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:1958:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:1958: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:1960: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:1981: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:1981: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_1_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/FunPtr.hs new file mode 100644 index 00000000..3bea0806 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/FunPtr.hs @@ -0,0 +1,8295 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_1_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_1_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_1_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_c984d344e939af21 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_90cffefabf6ce84d (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_2a1cc43388e86450 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1861138f33423ada (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_05846eb566059fd0 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_b4b75daf510f9903 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_2f7ab7ef1ea99468 (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_599a715b7a2dd035 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_8d483748c340b98c (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_02ff0d5f384d20ec (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0580fe3d684957b9 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c05a8a703e0cd5d1 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_084ddc41bb87ffb6 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad898594aa79a7f6 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bc4b2fedf567f69 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c2461771afac0b2 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a973b662217e96b (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0b68521297aec2b (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_1_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15bc892ad33db29e (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_892fe5acbdd22e17 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb679c1f405727f4 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34659c601f97dcbc (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_630d91f05c179598 (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50a81b3f6aa05e7d (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15d636221b94faeb (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a5ea0cf60fe4ee3 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d97fa77e8147a566 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01697607fdde05e8 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27bfc89956f851fc (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d57e46ebd354aee (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50d58a911be70a78 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c861712edd85edb (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_100518c7941125c9 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_edaaea31474b3722 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_89b410fd2ea0efe9 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_daa135b65354f39b (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9eb2a336b7c55bd4 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c9862aa71a9158b (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7cb77cef2cbddd18 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a1b89b1c140f693 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef3a908351928979 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0cbecf60bc41f47 (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_1_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c3a5cb71ff7eb8b6 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_535d4bda7131885c (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b346aa2fff383267 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_652682d231cc9324 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a7296dd82c8f3c6 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_294b6119a77a31c0 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_467e57a5d575a7ee (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea0aaf2d2fd78c65 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e231c71580ba807e (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec3be4e4fb7a1e7b (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f268bae2cd02d276 (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_1_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4736075bf8fdb96b (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30b4c74390efecea (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4031d408df7c286 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a46fcbe5ee7438a (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ba69fcf7c27989d (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_1_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_faad17868968624f (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_639e2b54b0237ce3 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24383d7e0df7f468 (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_1_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3233c7a28ee1f309 (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_1_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9824e5cf734b7a4 (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_1_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa2828b15bbe9e5e (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_1_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c1018e96984a00d (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_1_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34ce214f980147b3 (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_1_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d839a2a989c9db1e (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_923b101901d4d197 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39c62a67d85b9cc7 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2cace606da312e0f (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_1_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eea6b6e095b063e3 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b466fa71a644473d (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_1_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8b46558e756d31f (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_1_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a800f0a72b482e69 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d883c017fa7c4e36 (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_1_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08bec23138504491 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1bee9cee4d4e6661 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da7d2ede62ef5a34 (void)) (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ed3470b458e9bd6 (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_1_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92e50770a644f8c3 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7441f04831f372b (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e1a9b910c7e8157 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ccce0c23b8addd7b (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_63b3cf7defcc891c (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74c42a1f9a09f96d (void)) (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bbeb0160804ebcc0 (void)) (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d702023259a0aa80 (void)) (" + , " botan_mp_t const arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2625ff764d83e34 (void)) (" + , " botan_mp_t const arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_156d6531962be1ae (void)) (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_470a65aa1e83f5f1 (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c443f9b4fd7b21b (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_013c16e981263148 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0fc9eb18a503de07 (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_540983be7f92ab9f (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c0fa3172b977c4a (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0787aab62f57ef7b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5af95ed7ccd80d16 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8803bf9237c48d16 (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_1_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fec59d24796290c (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_1_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d96d96b4e841958 (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_1_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_587b1ae718c1b48f (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_1_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d2ba8e4c31496b8 (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_1_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28d465f42561f911 (void)) (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49e90c3900095fd2 (void)) (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_550e65bf2c133c02 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72a9fe5c23606da4 (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_1_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5dac198a2fb1690a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c888bc19de3a2080 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ab66bd06ec77e7c (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_1_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a99daaba50ba46d1 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48ac9ee31bfa841d (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_1_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9849fd9d3a176d04 (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_1_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6767a7d3682f5508 (void)) (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b3c8dbbf748ec71 (void)) (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a05f97f0bab6d840 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a97b9da87f9f4827 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c906621cfbff0fa8 (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_1_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_883d798b0e34b3e0 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b0bf5e6f0a80bba (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_1_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b683636bd2431a0b (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9eaf35659e105d22 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5f436e1202235b0 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a5455e4ae65be63 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc9912f414cdf8e9 (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_1_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_958d3260e1e16115 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52a2f543dc51c46e (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_1_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a71d0f55772e035 (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_1_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d367b6486f2f3408 (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_1_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d50eec1a9ee799b (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e131bc7733b137c4 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3321edd9192fd8d5 (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_1_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_048cc7c9ee34559e (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_1_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c6bab665e608ea6 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d901cd2532bccd4 (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_1_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fbf3e331f38940e (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_1_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bc7164232b4f04d (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_1_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d20f9a70b96c133 (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_1_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3a83529efc387b4 (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_1_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c6fb96e7f371b4c (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_1_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_870c44175a40a6f5 (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_1_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45afe0fe0fbea323 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9c1a706efecc97b (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d159d98245541b93 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1dec6c16747057b (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_1_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa3580f9d480acf1 (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_1_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93569d3f02d88712 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66b86cb28794f9ab (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2296a3669e3bdce5 (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b73ef4f79cadafab (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_427afa3eed6a5e4a (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b00897c1d5e30c6f (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c07ed93eb73670f (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a8af66bb1d1e3e5 (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_1_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_929f3171e7db843a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c02e7fffdd42fc88 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbf6e981a68824be (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22af9c7e26470520 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4b88ef9108ee51c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ba514683f957377 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9a88bdf972039f7 (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_1_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3db085169585f5c4 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32c949ab6a9243a0 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8bfdf1046b606f3c (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d695fdda0a1cf96c (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_1_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54aa4e96c52b5333 (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_1_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7d3b8b68b36c942 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d25e0fa3abd8933 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22327e299baba3e9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28a78cecdf136864 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96c38dd4f7b48423 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d54db0721202a8b2 (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_1_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b19e38ad807001f8 (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_1_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1798bfbc951e0385 (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_1_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54fc527e97e88004 (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_1_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d865ae1f7eb00dc3 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fb0112f4be0606a (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c9c2b4617d4ad0f (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76d90a6311d4d365 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b398fd9e8904317c (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f0bf5647f16e145d (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ebee54007c70ba27 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7e049a6a9fc86ef (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4de4abe486772c0 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8441b0574e3aa3c2 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16befcde1a9ecbb9 (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_1_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bc9d0df91232585 (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_1_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_857528be0f8ff07f (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98faca79b3e9de83 (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_1_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69662a22a05b3ddc (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_1_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5d5a08ad91cbe73 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1709cc4369e96892 (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_1_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31153f298456e672 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a220708d85710858 (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_1_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b53048cb13cef2a (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_1_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23d5e02528b571b0 (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_1_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93b8968bbd6c6c19 (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_1_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4de0d80c19c42e44 (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_1_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_508f239234c164c5 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_742e0e08e8bdd240 (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_1_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c1930cbd5775cd8 (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_1_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39e986e3893fa8e1 (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_1_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0465a27083fe79d2 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45e180871dde546a (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_1_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_07c0c785d3274150 (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_1_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bb981497f544beb (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_1_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5db3dddb405ed661 (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_113234c7732db5f9 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b0c96fd228234630 (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_1_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5b52c7a18a55aff (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_1_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_256cf2cc545d54f2 (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_1_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29f27c5e57413b6a (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d806d9825df2cc13 (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_1_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a38962a6db0c5a4 (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_1_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4647a6cd33aa2ca (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_1_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c29d88027322890d (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22d8359d76c68577 (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_1_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b45acb04ba2ea0b3 (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_1_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c3e26e6a7d2c8b2 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c6a85d1e5539c2b (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_1_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0fd5b4c04e28b1b2 (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_1_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_380c05cb86c73e36 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e0a8edcd495c19d (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_1_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b75577977ede661 (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_1_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8341789f526f2d88 (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_1_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de621b5ce164f299 (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_1_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ac8a11e304f55af (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1e77bfec3faaf75 (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_1_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eecfabdf0a5d9c1d (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_1_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e8c6a423628e91e (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_687fe36f13564e21 (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_1_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fff518d5c2e61bf (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_1_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44317dfa3b6df4a9 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b877c85f2846330 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c82958c49ce69ce (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f24cca29324c5a0 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_834231806d077665 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_865f4f71544eb2b9 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aaa4a70d1b404e17 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f53c64b33accc3ab (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39d7acbc005aa79e (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_1_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d2cb116e7d29014 (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_1_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c47b6264dd833cce (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_1_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d46e6c12cad834ad (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_1_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ddc2a97267d4ca58 (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_1_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4e35e4978d22a0e (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_1_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_baedc4e16e4add60 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_99c92820fa62162a (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_1_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4fc987f6f45aeba (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_1_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d53f912a90a75be (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee20f5a364048f2f (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_1_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_99cf2eac4ac571eb (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26e0196120177bc7 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e16e809c27bee47a (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_1_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_07ad969277c9c3d4 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_248fd67e3c385587 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e48473d4019fb1c (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cdf20f52e3160c4a (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c7607519b0dc65f (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98a5065a0f4a8149 (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_1_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bf7fa2fa5c7afbf (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_1_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d2244d1ba1abcba (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_1_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48bf0ef859845cc3 (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_1_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ee92f158e3e1ce5 (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_1_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2818794b4717669d (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_1_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a451412ddadf575 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54dd0bf79ff7d657 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35e5a4f36ca24207 (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_1_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_809ab830a01e48cb (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_1_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4506b7aa53acd7c (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc5a9a838caa177e (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5894bd34af768b69 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c8cffb0a90972ed (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_1_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_055dbc48fa491d42 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_039c52e9251642a6 (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_1_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9efebcc95b04ab97 (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_1_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42efb7b45d89a707 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5803af92f7644ccb (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eba2a15cadf5b72b (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_1_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03a57b24ce2b54c0 (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_1_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c82b69e79c0113d6 (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_1_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_21491b0b88acea46 (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_1_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6eba69d790623e68 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45c684097a9e3b77 (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_1_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_453cab746cefe0d5 (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_1_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_c984d344e939af21" hs_bindgen_c984d344e939af21 :: + 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:144: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_c984d344e939af21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_90cffefabf6ce84d" hs_bindgen_90cffefabf6ce84d :: + 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:153: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_90cffefabf6ce84d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_2a1cc43388e86450" hs_bindgen_2a1cc43388e86450 :: + 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:160: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_2a1cc43388e86450 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_1861138f33423ada" hs_bindgen_1861138f33423ada :: + 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:166: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_1861138f33423ada + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_05846eb566059fd0" hs_bindgen_05846eb566059fd0 :: + 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:171: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_05846eb566059fd0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_b4b75daf510f9903" hs_bindgen_b4b75daf510f9903 :: + 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:176: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_b4b75daf510f9903 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_2f7ab7ef1ea99468" hs_bindgen_2f7ab7ef1ea99468 :: + 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:181: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_2f7ab7ef1ea99468 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_599a715b7a2dd035" hs_bindgen_599a715b7a2dd035 :: + 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:186: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_599a715b7a2dd035 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_8d483748c340b98c" hs_bindgen_8d483748c340b98c :: + 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:192: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_8d483748c340b98c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_02ff0d5f384d20ec" hs_bindgen_02ff0d5f384d20ec :: + 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:197: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_02ff0d5f384d20ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_0580fe3d684957b9" hs_bindgen_0580fe3d684957b9 :: + 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:203: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_0580fe3d684957b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_c05a8a703e0cd5d1" hs_bindgen_c05a8a703e0cd5d1 :: + 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:209: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_c05a8a703e0cd5d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_084ddc41bb87ffb6" hs_bindgen_084ddc41bb87ffb6 :: + 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:221: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_084ddc41bb87ffb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_ad898594aa79a7f6" hs_bindgen_ad898594aa79a7f6 :: + 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:231: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_ad898594aa79a7f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_7bc4b2fedf567f69" hs_bindgen_7bc4b2fedf567f69 :: + 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:236: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_7bc4b2fedf567f69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_4c2461771afac0b2" hs_bindgen_4c2461771afac0b2 :: + 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:241: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_4c2461771afac0b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_8a973b662217e96b" hs_bindgen_8a973b662217e96b :: + 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:258: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_8a973b662217e96b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_e0b68521297aec2b" hs_bindgen_e0b68521297aec2b :: + 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:270: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_e0b68521297aec2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_15bc892ad33db29e" hs_bindgen_15bc892ad33db29e :: + 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:284: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_15bc892ad33db29e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_892fe5acbdd22e17" hs_bindgen_892fe5acbdd22e17 :: + 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:292: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_892fe5acbdd22e17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_cb679c1f405727f4" hs_bindgen_cb679c1f405727f4 :: + 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:302: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_cb679c1f405727f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_34659c601f97dcbc" hs_bindgen_34659c601f97dcbc :: + 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:312: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_34659c601f97dcbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_630d91f05c179598" hs_bindgen_630d91f05c179598 :: + 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:322: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_630d91f05c179598 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_50a81b3f6aa05e7d" hs_bindgen_50a81b3f6aa05e7d :: + 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:329: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_50a81b3f6aa05e7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_15d636221b94faeb" hs_bindgen_15d636221b94faeb :: + 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:343: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_15d636221b94faeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_6a5ea0cf60fe4ee3" hs_bindgen_6a5ea0cf60fe4ee3 :: + 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:351: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_6a5ea0cf60fe4ee3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_d97fa77e8147a566" hs_bindgen_d97fa77e8147a566 :: + 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:359: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_d97fa77e8147a566 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_01697607fdde05e8" hs_bindgen_01697607fdde05e8 :: + 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:367: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_01697607fdde05e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_27bfc89956f851fc" hs_bindgen_27bfc89956f851fc :: + 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:376: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_27bfc89956f851fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_7d57e46ebd354aee" hs_bindgen_7d57e46ebd354aee :: + 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:386: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_7d57e46ebd354aee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_50d58a911be70a78" hs_bindgen_50d58a911be70a78 :: + 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:394: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_50d58a911be70a78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_4c861712edd85edb" hs_bindgen_4c861712edd85edb :: + 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:401: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_4c861712edd85edb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_100518c7941125c9" hs_bindgen_100518c7941125c9 :: + 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:409: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_100518c7941125c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_edaaea31474b3722" hs_bindgen_edaaea31474b3722 :: + 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:424: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_edaaea31474b3722 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_89b410fd2ea0efe9" hs_bindgen_89b410fd2ea0efe9 :: + 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:432: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_89b410fd2ea0efe9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_daa135b65354f39b" hs_bindgen_daa135b65354f39b :: + 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:441: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_daa135b65354f39b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_9eb2a336b7c55bd4" hs_bindgen_9eb2a336b7c55bd4 :: + 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:450: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_9eb2a336b7c55bd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_7c9862aa71a9158b" hs_bindgen_7c9862aa71a9158b :: + 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:459: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_7c9862aa71a9158b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_7cb77cef2cbddd18" hs_bindgen_7cb77cef2cbddd18 :: + 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:469: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_7cb77cef2cbddd18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_8a1b89b1c140f693" hs_bindgen_8a1b89b1c140f693 :: + 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:477: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_8a1b89b1c140f693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_ef3a908351928979" hs_bindgen_ef3a908351928979 :: + 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:485: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_ef3a908351928979 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_a0cbecf60bc41f47" hs_bindgen_a0cbecf60bc41f47 :: + 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:495: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_a0cbecf60bc41f47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_c3a5cb71ff7eb8b6" hs_bindgen_c3a5cb71ff7eb8b6 :: + 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:505: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_c3a5cb71ff7eb8b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_535d4bda7131885c" hs_bindgen_535d4bda7131885c :: + 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:519: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_535d4bda7131885c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_b346aa2fff383267" hs_bindgen_b346aa2fff383267 :: + 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:524: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_b346aa2fff383267 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_652682d231cc9324" hs_bindgen_652682d231cc9324 :: + 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:529: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_652682d231cc9324 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_2a7296dd82c8f3c6" hs_bindgen_2a7296dd82c8f3c6 :: + 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:534: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_2a7296dd82c8f3c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_294b6119a77a31c0" hs_bindgen_294b6119a77a31c0 :: + 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:539: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_294b6119a77a31c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_467e57a5d575a7ee" hs_bindgen_467e57a5d575a7ee :: + 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:544: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_467e57a5d575a7ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_ea0aaf2d2fd78c65" hs_bindgen_ea0aaf2d2fd78c65 :: + 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:550: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_ea0aaf2d2fd78c65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_e231c71580ba807e" hs_bindgen_e231c71580ba807e :: + 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:556: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_e231c71580ba807e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_ec3be4e4fb7a1e7b" hs_bindgen_ec3be4e4fb7a1e7b :: + 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:562: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_ec3be4e4fb7a1e7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_f268bae2cd02d276" hs_bindgen_f268bae2cd02d276 :: + 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:568: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_f268bae2cd02d276 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_4736075bf8fdb96b" hs_bindgen_4736075bf8fdb96b :: + 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:573: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_4736075bf8fdb96b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_30b4c74390efecea" hs_bindgen_30b4c74390efecea :: + 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:583: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_30b4c74390efecea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_f4031d408df7c286" hs_bindgen_f4031d408df7c286 :: + 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:588: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_f4031d408df7c286 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_2a46fcbe5ee7438a" hs_bindgen_2a46fcbe5ee7438a :: + 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:593: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_2a46fcbe5ee7438a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_3ba69fcf7c27989d" hs_bindgen_3ba69fcf7c27989d :: + 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:601: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_3ba69fcf7c27989d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_faad17868968624f" hs_bindgen_faad17868968624f :: + 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:613: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_faad17868968624f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_639e2b54b0237ce3" hs_bindgen_639e2b54b0237ce3 :: + 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:619: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_639e2b54b0237ce3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_24383d7e0df7f468" hs_bindgen_24383d7e0df7f468 :: + 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:638: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_24383d7e0df7f468 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_3233c7a28ee1f309" hs_bindgen_3233c7a28ee1f309 :: + 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:671: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_3233c7a28ee1f309 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_f9824e5cf734b7a4" hs_bindgen_f9824e5cf734b7a4 :: + 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:695: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_f9824e5cf734b7a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_aa2828b15bbe9e5e" hs_bindgen_aa2828b15bbe9e5e :: + 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:722: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_aa2828b15bbe9e5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_0c1018e96984a00d" hs_bindgen_0c1018e96984a00d :: + 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:741: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_0c1018e96984a00d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_34ce214f980147b3" hs_bindgen_34ce214f980147b3 :: + 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:764: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_34ce214f980147b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_d839a2a989c9db1e" hs_bindgen_d839a2a989c9db1e :: + 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:782: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_d839a2a989c9db1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_923b101901d4d197" hs_bindgen_923b101901d4d197 :: + 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:788: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_923b101901d4d197 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_39c62a67d85b9cc7" hs_bindgen_39c62a67d85b9cc7 :: + 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:794: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_39c62a67d85b9cc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_2cace606da312e0f" hs_bindgen_2cace606da312e0f :: + 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:799: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_2cace606da312e0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_eea6b6e095b063e3" hs_bindgen_eea6b6e095b063e3 :: + 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:805: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_eea6b6e095b063e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_b466fa71a644473d" hs_bindgen_b466fa71a644473d :: + 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:811: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_b466fa71a644473d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_b8b46558e756d31f" hs_bindgen_b8b46558e756d31f :: + 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:817: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_b8b46558e756d31f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_a800f0a72b482e69" hs_bindgen_a800f0a72b482e69 :: + 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:825: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_a800f0a72b482e69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_d883c017fa7c4e36" hs_bindgen_d883c017fa7c4e36 :: + 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:835: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_d883c017fa7c4e36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_08bec23138504491" hs_bindgen_08bec23138504491 :: + 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:848: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_08bec23138504491 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_1bee9cee4d4e6661" hs_bindgen_1bee9cee4d4e6661 :: + 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:854: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_1bee9cee4d4e6661 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_da7d2ede62ef5a34" hs_bindgen_da7d2ede62ef5a34 :: + 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:859: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_da7d2ede62ef5a34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_9ed3470b458e9bd6" hs_bindgen_9ed3470b458e9bd6 :: + 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:864: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_9ed3470b458e9bd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_92e50770a644f8c3" hs_bindgen_92e50770a644f8c3 :: + 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:869: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_92e50770a644f8c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_b7441f04831f372b" hs_bindgen_b7441f04831f372b :: + 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:874: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_b7441f04831f372b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_1e1a9b910c7e8157" hs_bindgen_1e1a9b910c7e8157 :: + 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:879: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_1e1a9b910c7e8157 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_ccce0c23b8addd7b" hs_bindgen_ccce0c23b8addd7b :: + 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:884: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_ccce0c23b8addd7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_63b3cf7defcc891c" hs_bindgen_63b3cf7defcc891c :: + 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:890: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_63b3cf7defcc891c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_74c42a1f9a09f96d" hs_bindgen_74c42a1f9a09f96d :: + 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:895: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_74c42a1f9a09f96d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_bbeb0160804ebcc0" hs_bindgen_bbeb0160804ebcc0 :: + 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:900: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_bbeb0160804ebcc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_d702023259a0aa80" hs_bindgen_d702023259a0aa80 :: + 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:905: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_d702023259a0aa80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_d2625ff764d83e34" hs_bindgen_d2625ff764d83e34 :: + 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:910: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_d2625ff764d83e34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_156d6531962be1ae" hs_bindgen_156d6531962be1ae :: + 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:915: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_156d6531962be1ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_470a65aa1e83f5f1" hs_bindgen_470a65aa1e83f5f1 :: + 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:922: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_470a65aa1e83f5f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_6c443f9b4fd7b21b" hs_bindgen_6c443f9b4fd7b21b :: + 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:927: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_6c443f9b4fd7b21b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_013c16e981263148" hs_bindgen_013c16e981263148 :: + 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:929: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_013c16e981263148 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_0fc9eb18a503de07" hs_bindgen_0fc9eb18a503de07 :: + 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:931: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_0fc9eb18a503de07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_540983be7f92ab9f" hs_bindgen_540983be7f92ab9f :: + 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:933: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_540983be7f92ab9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_1c0fa3172b977c4a" hs_bindgen_1c0fa3172b977c4a :: + 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:934: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_1c0fa3172b977c4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_0787aab62f57ef7b" hs_bindgen_0787aab62f57ef7b :: + 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:936: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_0787aab62f57ef7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_5af95ed7ccd80d16" hs_bindgen_5af95ed7ccd80d16 :: + 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:937: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_5af95ed7ccd80d16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_8803bf9237c48d16" hs_bindgen_8803bf9237c48d16 :: + 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:939: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_8803bf9237c48d16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_2fec59d24796290c" hs_bindgen_2fec59d24796290c :: + 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:940: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_2fec59d24796290c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_0d96d96b4e841958" hs_bindgen_0d96d96b4e841958 :: + 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:941: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_0d96d96b4e841958 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_587b1ae718c1b48f" hs_bindgen_587b1ae718c1b48f :: + 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:944: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_587b1ae718c1b48f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_7d2ba8e4c31496b8" hs_bindgen_7d2ba8e4c31496b8 :: + 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:947: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_7d2ba8e4c31496b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_28d465f42561f911" hs_bindgen_28d465f42561f911 :: + 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:954: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_28d465f42561f911 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_49e90c3900095fd2" hs_bindgen_49e90c3900095fd2 :: + 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:961: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_49e90c3900095fd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_550e65bf2c133c02" hs_bindgen_550e65bf2c133c02 :: + 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:966: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_550e65bf2c133c02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_72a9fe5c23606da4" hs_bindgen_72a9fe5c23606da4 :: + 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:970: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_72a9fe5c23606da4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_5dac198a2fb1690a" hs_bindgen_5dac198a2fb1690a :: + 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:972: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_5dac198a2fb1690a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_c888bc19de3a2080" hs_bindgen_c888bc19de3a2080 :: + 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:973: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_c888bc19de3a2080 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_2ab66bd06ec77e7c" hs_bindgen_2ab66bd06ec77e7c :: + 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:975: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_2ab66bd06ec77e7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_a99daaba50ba46d1" hs_bindgen_a99daaba50ba46d1 :: + 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:977: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_a99daaba50ba46d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_48ac9ee31bfa841d" hs_bindgen_48ac9ee31bfa841d :: + 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:980: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_48ac9ee31bfa841d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_9849fd9d3a176d04" hs_bindgen_9849fd9d3a176d04 :: + 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:985: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_9849fd9d3a176d04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_6767a7d3682f5508" hs_bindgen_6767a7d3682f5508 :: + 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:992: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_6767a7d3682f5508 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_8b3c8dbbf748ec71" hs_bindgen_8b3c8dbbf748ec71 :: + 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:999: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_8b3c8dbbf748ec71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_a05f97f0bab6d840" hs_bindgen_a05f97f0bab6d840 :: + 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:1004: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_a05f97f0bab6d840 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_a97b9da87f9f4827" hs_bindgen_a97b9da87f9f4827 :: + 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:1009: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_a97b9da87f9f4827 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_c906621cfbff0fa8" hs_bindgen_c906621cfbff0fa8 :: + 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:1027: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_c906621cfbff0fa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_883d798b0e34b3e0" hs_bindgen_883d798b0e34b3e0 :: + 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:1038: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_883d798b0e34b3e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_1b0bf5e6f0a80bba" hs_bindgen_1b0bf5e6f0a80bba :: + 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:1054: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_1b0bf5e6f0a80bba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_b683636bd2431a0b" hs_bindgen_b683636bd2431a0b :: + 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:1058: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_b683636bd2431a0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_9eaf35659e105d22" hs_bindgen_9eaf35659e105d22 :: + 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:1061: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_9eaf35659e105d22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_b5f436e1202235b0" hs_bindgen_b5f436e1202235b0 :: + 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:1063: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_b5f436e1202235b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_6a5455e4ae65be63" hs_bindgen_6a5455e4ae65be63 :: + 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:1065: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_6a5455e4ae65be63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_bc9912f414cdf8e9" hs_bindgen_bc9912f414cdf8e9 :: + 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:1067: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_bc9912f414cdf8e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_958d3260e1e16115" hs_bindgen_958d3260e1e16115 :: + 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:1069: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_958d3260e1e16115 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_52a2f543dc51c46e" hs_bindgen_52a2f543dc51c46e :: + 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:1089: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_52a2f543dc51c46e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_1a71d0f55772e035" hs_bindgen_1a71d0f55772e035 :: + 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:1111: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_1a71d0f55772e035 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_d367b6486f2f3408" hs_bindgen_d367b6486f2f3408 :: + 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:1119: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_d367b6486f2f3408 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_6d50eec1a9ee799b" hs_bindgen_6d50eec1a9ee799b :: + 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:1124: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_6d50eec1a9ee799b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_e131bc7733b137c4" hs_bindgen_e131bc7733b137c4 :: + 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:1136: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_e131bc7733b137c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_3321edd9192fd8d5" hs_bindgen_3321edd9192fd8d5 :: + 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:1141: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_3321edd9192fd8d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_048cc7c9ee34559e" hs_bindgen_048cc7c9ee34559e :: + 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:1146: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_048cc7c9ee34559e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_3c6bab665e608ea6" hs_bindgen_3c6bab665e608ea6 :: + 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:1148: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_3c6bab665e608ea6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_3d901cd2532bccd4" hs_bindgen_3d901cd2532bccd4 :: + 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:1155: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_3d901cd2532bccd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_6fbf3e331f38940e" hs_bindgen_6fbf3e331f38940e :: + 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:1170: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_6fbf3e331f38940e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_3bc7164232b4f04d" hs_bindgen_3bc7164232b4f04d :: + 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:1185: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_3bc7164232b4f04d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_8d20f9a70b96c133" hs_bindgen_8d20f9a70b96c133 :: + 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:1202: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_8d20f9a70b96c133 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_b3a83529efc387b4" hs_bindgen_b3a83529efc387b4 :: + 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:1217: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_b3a83529efc387b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_9c6fb96e7f371b4c" hs_bindgen_9c6fb96e7f371b4c :: + 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:1233: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_9c6fb96e7f371b4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_870c44175a40a6f5" hs_bindgen_870c44175a40a6f5 :: + 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:1248: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_870c44175a40a6f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_45afe0fe0fbea323" hs_bindgen_45afe0fe0fbea323 :: + 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:1259: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_45afe0fe0fbea323 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_e9c1a706efecc97b" hs_bindgen_e9c1a706efecc97b :: + 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:1261: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_e9c1a706efecc97b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_d159d98245541b93" hs_bindgen_d159d98245541b93 :: + 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:1263: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_d159d98245541b93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d1dec6c16747057b" hs_bindgen_d1dec6c16747057b :: + 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:1268: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_d1dec6c16747057b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_fa3580f9d480acf1" hs_bindgen_fa3580f9d480acf1 :: + 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:1273: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_fa3580f9d480acf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_93569d3f02d88712" hs_bindgen_93569d3f02d88712 :: + 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:1275: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_93569d3f02d88712 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_66b86cb28794f9ab" hs_bindgen_66b86cb28794f9ab :: + 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:1280: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_66b86cb28794f9ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_2296a3669e3bdce5" hs_bindgen_2296a3669e3bdce5 :: + 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:1282: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_2296a3669e3bdce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_b73ef4f79cadafab" hs_bindgen_b73ef4f79cadafab :: + 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:1285: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_b73ef4f79cadafab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_427afa3eed6a5e4a" hs_bindgen_427afa3eed6a5e4a :: + 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:1290: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_427afa3eed6a5e4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b00897c1d5e30c6f" hs_bindgen_b00897c1d5e30c6f :: + 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:1295: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_b00897c1d5e30c6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_7c07ed93eb73670f" hs_bindgen_7c07ed93eb73670f :: + 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:1297: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_7c07ed93eb73670f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_9a8af66bb1d1e3e5" hs_bindgen_9a8af66bb1d1e3e5 :: + 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:1302: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_9a8af66bb1d1e3e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_929f3171e7db843a" hs_bindgen_929f3171e7db843a :: + 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:1304: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_929f3171e7db843a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_c02e7fffdd42fc88" hs_bindgen_c02e7fffdd42fc88 :: + 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:1307: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_c02e7fffdd42fc88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_fbf6e981a68824be" hs_bindgen_fbf6e981a68824be :: + 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:1309: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_fbf6e981a68824be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_22af9c7e26470520" hs_bindgen_22af9c7e26470520 :: + 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:1311: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_22af9c7e26470520 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_f4b88ef9108ee51c" hs_bindgen_f4b88ef9108ee51c :: + 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:1313: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_f4b88ef9108ee51c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_2ba514683f957377" hs_bindgen_2ba514683f957377 :: + 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:1315: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_2ba514683f957377 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_d9a88bdf972039f7" hs_bindgen_d9a88bdf972039f7 :: + 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:1318: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_d9a88bdf972039f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_3db085169585f5c4" hs_bindgen_3db085169585f5c4 :: + 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:1320: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_3db085169585f5c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_32c949ab6a9243a0" hs_bindgen_32c949ab6a9243a0 :: + 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:1323: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_32c949ab6a9243a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_8bfdf1046b606f3c" hs_bindgen_8bfdf1046b606f3c :: + 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:1325: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_8bfdf1046b606f3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_d695fdda0a1cf96c" hs_bindgen_d695fdda0a1cf96c :: + 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:1331: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_d695fdda0a1cf96c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_54aa4e96c52b5333" hs_bindgen_54aa4e96c52b5333 :: + 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:1334: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_54aa4e96c52b5333 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_b7d3b8b68b36c942" hs_bindgen_b7d3b8b68b36c942 :: + 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:1337: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_b7d3b8b68b36c942 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_7d25e0fa3abd8933" hs_bindgen_7d25e0fa3abd8933 :: + 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:1340: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_7d25e0fa3abd8933 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_22327e299baba3e9" hs_bindgen_22327e299baba3e9 :: + 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:1342: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_22327e299baba3e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_28a78cecdf136864" hs_bindgen_28a78cecdf136864 :: + 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:1344: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_28a78cecdf136864 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_96c38dd4f7b48423" hs_bindgen_96c38dd4f7b48423 :: + 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:1346: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_96c38dd4f7b48423 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_d54db0721202a8b2" hs_bindgen_d54db0721202a8b2 :: + 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:1361: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_d54db0721202a8b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_b19e38ad807001f8" hs_bindgen_b19e38ad807001f8 :: + 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:1375: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_b19e38ad807001f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_1798bfbc951e0385" hs_bindgen_1798bfbc951e0385 :: + 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:1393: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_1798bfbc951e0385 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_54fc527e97e88004" hs_bindgen_54fc527e97e88004 :: + 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:1408: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_54fc527e97e88004 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_d865ae1f7eb00dc3" hs_bindgen_d865ae1f7eb00dc3 :: + 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:1414: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_d865ae1f7eb00dc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_3fb0112f4be0606a" hs_bindgen_3fb0112f4be0606a :: + 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:1416: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_3fb0112f4be0606a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_5c9c2b4617d4ad0f" hs_bindgen_5c9c2b4617d4ad0f :: + 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:1418: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_5c9c2b4617d4ad0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_76d90a6311d4d365" hs_bindgen_76d90a6311d4d365 :: + 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:1420: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_76d90a6311d4d365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_b398fd9e8904317c" hs_bindgen_b398fd9e8904317c :: + 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:1426: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_b398fd9e8904317c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_f0bf5647f16e145d" hs_bindgen_f0bf5647f16e145d :: + 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:1428: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_f0bf5647f16e145d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_ebee54007c70ba27" hs_bindgen_ebee54007c70ba27 :: + 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:1430: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_ebee54007c70ba27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f7e049a6a9fc86ef" hs_bindgen_f7e049a6a9fc86ef :: + 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:1432: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_f7e049a6a9fc86ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_f4de4abe486772c0" hs_bindgen_f4de4abe486772c0 :: + 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:1438: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_f4de4abe486772c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_8441b0574e3aa3c2" hs_bindgen_8441b0574e3aa3c2 :: + 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:1440: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_8441b0574e3aa3c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_16befcde1a9ecbb9" hs_bindgen_16befcde1a9ecbb9 :: + 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:1443: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_16befcde1a9ecbb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_6bc9d0df91232585" hs_bindgen_6bc9d0df91232585 :: + 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:1446: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_6bc9d0df91232585 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_857528be0f8ff07f" hs_bindgen_857528be0f8ff07f :: + 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:1452: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_857528be0f8ff07f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_98faca79b3e9de83" hs_bindgen_98faca79b3e9de83 :: + 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:1455: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_98faca79b3e9de83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_69662a22a05b3ddc" hs_bindgen_69662a22a05b3ddc :: + 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:1461: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_69662a22a05b3ddc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_d5d5a08ad91cbe73" hs_bindgen_d5d5a08ad91cbe73 :: + 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:1467: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_d5d5a08ad91cbe73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_1709cc4369e96892" hs_bindgen_1709cc4369e96892 :: + 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:1470: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_1709cc4369e96892 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_31153f298456e672" hs_bindgen_31153f298456e672 :: + 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:1476: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_31153f298456e672 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_a220708d85710858" hs_bindgen_a220708d85710858 :: + 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:1480: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_a220708d85710858 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_9b53048cb13cef2a" hs_bindgen_9b53048cb13cef2a :: + 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:1487: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_9b53048cb13cef2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_23d5e02528b571b0" hs_bindgen_23d5e02528b571b0 :: + 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:1490: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_23d5e02528b571b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_93b8968bbd6c6c19" hs_bindgen_93b8968bbd6c6c19 :: + 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:1497: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_93b8968bbd6c6c19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_4de0d80c19c42e44" hs_bindgen_4de0d80c19c42e44 :: + 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:1505: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_4de0d80c19c42e44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_508f239234c164c5" hs_bindgen_508f239234c164c5 :: + 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:1510: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_508f239234c164c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_742e0e08e8bdd240" hs_bindgen_742e0e08e8bdd240 :: + 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:1513: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_742e0e08e8bdd240 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_2c1930cbd5775cd8" hs_bindgen_2c1930cbd5775cd8 :: + 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:1516: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_2c1930cbd5775cd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_39e986e3893fa8e1" hs_bindgen_39e986e3893fa8e1 :: + 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:1529: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_39e986e3893fa8e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_0465a27083fe79d2" hs_bindgen_0465a27083fe79d2 :: + 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:1534: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_0465a27083fe79d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_45e180871dde546a" hs_bindgen_45e180871dde546a :: + 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:1537: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_45e180871dde546a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_07c0c785d3274150" hs_bindgen_07c0c785d3274150 :: + 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:1540: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_07c0c785d3274150 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_0bb981497f544beb" hs_bindgen_0bb981497f544beb :: + 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:1552: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_0bb981497f544beb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_5db3dddb405ed661" hs_bindgen_5db3dddb405ed661 :: + 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:1557: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_5db3dddb405ed661 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_113234c7732db5f9" hs_bindgen_113234c7732db5f9 :: + 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:1559: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_113234c7732db5f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_b0c96fd228234630" hs_bindgen_b0c96fd228234630 :: + 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:1561: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_b0c96fd228234630 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_c5b52c7a18a55aff" hs_bindgen_c5b52c7a18a55aff :: + 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:1564: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_c5b52c7a18a55aff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_256cf2cc545d54f2" hs_bindgen_256cf2cc545d54f2 :: + 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:1572: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_256cf2cc545d54f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_29f27c5e57413b6a" hs_bindgen_29f27c5e57413b6a :: + 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:1580: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_29f27c5e57413b6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_d806d9825df2cc13" hs_bindgen_d806d9825df2cc13 :: + 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:1582: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_d806d9825df2cc13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_1a38962a6db0c5a4" hs_bindgen_1a38962a6db0c5a4 :: + 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:1583: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_1a38962a6db0c5a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_c4647a6cd33aa2ca" hs_bindgen_c4647a6cd33aa2ca :: + 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:1591: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_c4647a6cd33aa2ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_c29d88027322890d" hs_bindgen_c29d88027322890d :: + 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:1596: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_c29d88027322890d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_22d8359d76c68577" hs_bindgen_22d8359d76c68577 :: + 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:1598: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_22d8359d76c68577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_b45acb04ba2ea0b3" hs_bindgen_b45acb04ba2ea0b3 :: + 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:1601: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_b45acb04ba2ea0b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_6c3e26e6a7d2c8b2" hs_bindgen_6c3e26e6a7d2c8b2 :: + 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:1603: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_6c3e26e6a7d2c8b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_7c6a85d1e5539c2b" hs_bindgen_7c6a85d1e5539c2b :: + 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:1606: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_7c6a85d1e5539c2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_0fd5b4c04e28b1b2" hs_bindgen_0fd5b4c04e28b1b2 :: + 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:1620: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_0fd5b4c04e28b1b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_380c05cb86c73e36" hs_bindgen_380c05cb86c73e36 :: + 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:1625: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_380c05cb86c73e36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_3e0a8edcd495c19d" hs_bindgen_3e0a8edcd495c19d :: + 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:1628: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_3e0a8edcd495c19d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_3b75577977ede661" hs_bindgen_3b75577977ede661 :: + 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:1633: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_3b75577977ede661 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_8341789f526f2d88" hs_bindgen_8341789f526f2d88 :: + 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:1637: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_8341789f526f2d88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_de621b5ce164f299" hs_bindgen_de621b5ce164f299 :: + 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:1650: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_de621b5ce164f299 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_5ac8a11e304f55af" hs_bindgen_5ac8a11e304f55af :: + 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:1655: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_5ac8a11e304f55af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_d1e77bfec3faaf75" hs_bindgen_d1e77bfec3faaf75 :: + 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:1658: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_d1e77bfec3faaf75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_eecfabdf0a5d9c1d" hs_bindgen_eecfabdf0a5d9c1d :: + 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:1663: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_eecfabdf0a5d9c1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_3e8c6a423628e91e" hs_bindgen_3e8c6a423628e91e :: + 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:1676: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_3e8c6a423628e91e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_687fe36f13564e21" hs_bindgen_687fe36f13564e21 :: + 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:1683: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_687fe36f13564e21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_3fff518d5c2e61bf" hs_bindgen_3fff518d5c2e61bf :: + 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:1698: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_3fff518d5c2e61bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_44317dfa3b6df4a9" hs_bindgen_44317dfa3b6df4a9 :: + 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:1713: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_44317dfa3b6df4a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_1b877c85f2846330" hs_bindgen_1b877c85f2846330 :: + 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:1714: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_1b877c85f2846330 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_0c82958c49ce69ce" hs_bindgen_0c82958c49ce69ce :: + 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:1719: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_0c82958c49ce69ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_3f24cca29324c5a0" hs_bindgen_3f24cca29324c5a0 :: + 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:1721: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_3f24cca29324c5a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_834231806d077665" hs_bindgen_834231806d077665 :: + 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:1724: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_834231806d077665 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_865f4f71544eb2b9" hs_bindgen_865f4f71544eb2b9 :: + 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:1725: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_865f4f71544eb2b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_aaa4a70d1b404e17" hs_bindgen_aaa4a70d1b404e17 :: + 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:1727: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_aaa4a70d1b404e17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_f53c64b33accc3ab" hs_bindgen_f53c64b33accc3ab :: + 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:1728: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_f53c64b33accc3ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_39d7acbc005aa79e" hs_bindgen_39d7acbc005aa79e :: + 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:1731: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_39d7acbc005aa79e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_8d2cb116e7d29014" hs_bindgen_8d2cb116e7d29014 :: + 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:1733: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_8d2cb116e7d29014 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_c47b6264dd833cce" hs_bindgen_c47b6264dd833cce :: + 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:1734: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_c47b6264dd833cce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_d46e6c12cad834ad" hs_bindgen_d46e6c12cad834ad :: + 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:1735: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_d46e6c12cad834ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_ddc2a97267d4ca58" hs_bindgen_ddc2a97267d4ca58 :: + 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:1737: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_ddc2a97267d4ca58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_a4e35e4978d22a0e" hs_bindgen_a4e35e4978d22a0e :: + 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:1740: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_a4e35e4978d22a0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_baedc4e16e4add60" hs_bindgen_baedc4e16e4add60 :: + 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:1742: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_baedc4e16e4add60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_99c92820fa62162a" hs_bindgen_99c92820fa62162a :: + 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:1745: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_99c92820fa62162a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_a4fc987f6f45aeba" hs_bindgen_a4fc987f6f45aeba :: + 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:1749: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_a4fc987f6f45aeba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_1d53f912a90a75be" hs_bindgen_1d53f912a90a75be :: + 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:1752: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_1d53f912a90a75be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_ee20f5a364048f2f" hs_bindgen_ee20f5a364048f2f :: + 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:1755: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_ee20f5a364048f2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_99cf2eac4ac571eb" hs_bindgen_99cf2eac4ac571eb :: + 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:1771: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_99cf2eac4ac571eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_26e0196120177bc7" hs_bindgen_26e0196120177bc7 :: + 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:1777: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_26e0196120177bc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_e16e809c27bee47a" hs_bindgen_e16e809c27bee47a :: + 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:1788: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_e16e809c27bee47a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_07ad969277c9c3d4" hs_bindgen_07ad969277c9c3d4 :: + 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:1803: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_07ad969277c9c3d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_248fd67e3c385587" hs_bindgen_248fd67e3c385587 :: + 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:1811: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_248fd67e3c385587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_8e48473d4019fb1c" hs_bindgen_8e48473d4019fb1c :: + 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:1813: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_8e48473d4019fb1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_cdf20f52e3160c4a" hs_bindgen_cdf20f52e3160c4a :: + 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:1815: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_cdf20f52e3160c4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_6c7607519b0dc65f" hs_bindgen_6c7607519b0dc65f :: + 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:1821: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_6c7607519b0dc65f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_98a5065a0f4a8149" hs_bindgen_98a5065a0f4a8149 :: + 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:1828: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_98a5065a0f4a8149 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_4bf7fa2fa5c7afbf" hs_bindgen_4bf7fa2fa5c7afbf :: + 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:1846: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_4bf7fa2fa5c7afbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_2d2244d1ba1abcba" hs_bindgen_2d2244d1ba1abcba :: + 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:1855: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_2d2244d1ba1abcba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_48bf0ef859845cc3" hs_bindgen_48bf0ef859845cc3 :: + 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:1863: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_48bf0ef859845cc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_3ee92f158e3e1ce5" hs_bindgen_3ee92f158e3e1ce5 :: + 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:1873: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_3ee92f158e3e1ce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_2818794b4717669d" hs_bindgen_2818794b4717669d :: + 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:1892: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_2818794b4717669d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_5a451412ddadf575" hs_bindgen_5a451412ddadf575 :: + 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:1899: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_5a451412ddadf575 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_54dd0bf79ff7d657" hs_bindgen_54dd0bf79ff7d657 :: + 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:1905: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_54dd0bf79ff7d657 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_35e5a4f36ca24207" hs_bindgen_35e5a4f36ca24207 :: + 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:1911: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_35e5a4f36ca24207 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_809ab830a01e48cb" hs_bindgen_809ab830a01e48cb :: + 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:1924: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_809ab830a01e48cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_f4506b7aa53acd7c" hs_bindgen_f4506b7aa53acd7c :: + 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:1932: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_f4506b7aa53acd7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_cc5a9a838caa177e" hs_bindgen_cc5a9a838caa177e :: + 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:1941: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_cc5a9a838caa177e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_5894bd34af768b69" hs_bindgen_5894bd34af768b69 :: + 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:1952: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_5894bd34af768b69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_0c8cffb0a90972ed" hs_bindgen_0c8cffb0a90972ed :: + 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:1963: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_0c8cffb0a90972ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_055dbc48fa491d42" hs_bindgen_055dbc48fa491d42 :: + 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:1970: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_055dbc48fa491d42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_039c52e9251642a6" hs_bindgen_039c52e9251642a6 :: + 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:1973: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_039c52e9251642a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_9efebcc95b04ab97" hs_bindgen_9efebcc95b04ab97 :: + 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:1976: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_9efebcc95b04ab97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_42efb7b45d89a707" hs_bindgen_42efb7b45d89a707 :: + 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:1988: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_42efb7b45d89a707 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_5803af92f7644ccb" hs_bindgen_5803af92f7644ccb :: + 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:1996: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_5803af92f7644ccb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_eba2a15cadf5b72b" hs_bindgen_eba2a15cadf5b72b :: + 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:2011: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_eba2a15cadf5b72b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_03a57b24ce2b54c0" hs_bindgen_03a57b24ce2b54c0 :: + 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:2030: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_03a57b24ce2b54c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_c82b69e79c0113d6" hs_bindgen_c82b69e79c0113d6 :: + 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:2046: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_c82b69e79c0113d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_21491b0b88acea46" hs_bindgen_21491b0b88acea46 :: + 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:2073: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_21491b0b88acea46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_6eba69d790623e68" hs_bindgen_6eba69d790623e68 :: + 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:2091: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_6eba69d790623e68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_45c684097a9e3b77" hs_bindgen_45c684097a9e3b77 :: + 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:2112: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_45c684097a9e3b77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_453cab746cefe0d5" hs_bindgen_453cab746cefe0d5 :: + 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:2133: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_453cab746cefe0d5 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/Safe.hs new file mode 100644 index 00000000..eb07d421 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/Safe.hs @@ -0,0 +1,12243 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_1_0.Safe where + +import Botan.Bindings.Generated.Botan_3_1_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_2a83148b19d9f0c4 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_178a649452cb0ae6 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_6ba11d76843e2d42 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_e522e136771e2670 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_9bd72855e3a2a5dc (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_da6836a07e43e0d0 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_41249e1a66696390 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_f4c1b4a8912c3ea1 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_d60013317dbc9742 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_d2c9c8e06e35b1d5 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b9bc07c444d6f744 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8181565160cba2c0 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f895e0dbcc393d7 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_28990ce477783950 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0d1f7a4a329908d3 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f2fed4ace3369fe9 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8be2cf2eae10ca7d (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_539382c07c2647d2 (" + , " 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_1b2974814cf4ffe1 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d0c0030263cb4337 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d67cf8c55e73aa5 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_12b6df554f8d57be (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d8c2072c9e3a0c51 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cd9545af0722916b (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0594927ba83d1dc9 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53342e17c92f658a (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d753d20b64bafbf1 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5ebaee2eb5a62e3e (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3d03c438590ad5d0 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fbf7f36c0e24e92d (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ac149acb731604f (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_b78f0ee38defcbcb (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cd7ff08e6f5a7e7a (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2731b5f49062dc20 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_06dc18148a96d33d (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dd61a269f82ec5fd (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_36e5b608a4ffc0e1 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9fd346fe19a4a4fd (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d2a2d6d355812515 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_24d6a363f9d13497 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_4c19e806ad6a3cad (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1acf0dcea0091a48 (" + , " 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_c5661ae3e6c2c2b0 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c7b57928e94eecbd (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_03e66899ffaf8450 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_99372e658cad7707 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc011606ff403555 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c450a830ee9f9d3f (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf39f0b2c8b1d46f (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_136f18e2ab60c4bb (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ea08167eee54f88 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e9adc8f737b9b0e9 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_36aecbc59edbd4b9 (" + , " 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_95088c01d63114e4 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b7280649a7bd6c83 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_9843c79181b014a4 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f4e0d4b6a0234eac (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2aca894abfec1433 (" + , " 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_d59ff0da664cedc5 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_600af166926da267 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4c545428c1e3090b (" + , " 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_3dda96912c8114a1 (" + , " 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_93607193a2bb5eda (" + , " 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_867055822f4b5279 (" + , " 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_7f100ae3119e0a68 (" + , " 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_82ab8a68b7320603 (" + , " 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_1a10e99a160ddabe (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c47f2cd2210481e6 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3c91256e8456f1d2 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_5d160910c3d7cc1e (" + , " 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_62ba18d663a7e02a (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_d45b9fb2ef853ef3 (" + , " 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_e6eea97f1cdc8106 (" + , " 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_17be4360f32f5050 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_efa124dac6ab67b3 (" + , " 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_9de73b396739c087 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_87464e07bfedbcc1 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8a9cbf715d2b81d5 (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_df2f298e6bb7333c (" + , " 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_07bc925cd8c50756 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_4bbd5573e8a5217e (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d961a0f73026a7fb (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52d0a644023156c6 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_becc4cc23a20ecb3 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fd14ffbad51b15df (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_08e527a4ed15bc3a (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7ab8a3102bf8e6da (" + , " botan_mp_t const arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_049dc54cc230339f (" + , " botan_mp_t const arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a1f60e327b8ef741 (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cafa12038018a59d (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_68cbad07069d7ecd (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_d960c6fced1fd311 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_d77b9b2dfc954bf3 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_5691c88cec422885 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_f095c80117547653 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_7676f7bf33ac3e96 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d2f7605f13b980c (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0a4d5cee6f13168f (" + , " 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_44d26522228e9f12 (" + , " 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_3ff2bb61cd173d15 (" + , " 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_ea8f90113ac4c978 (" + , " 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_0e972b888b274cc4 (" + , " 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_f7e333bb50771d1e (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f701af5e8cfcd1dd (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2e0809d29e8ca463 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_948a0fcd1b9d6601 (" + , " 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_6c01b0dc6d743ece (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54fe76c7302ba579 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a18201d1dfef5a4e (" + , " 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_1de24aa5c3ee1317 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f193973f4391125 (" + , " 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_30d1d6a24ad98ecb (" + , " 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_8d033ea6ccaca2cc (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ebad78abeeffa2d6 (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9c63c004bb1db223 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_58a3eb6a7e7478d0 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b59eb3a5c6972ec2 (" + , " 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_fd4e8a70419ea7a6 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b530a26a661602b8 (" + , " 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_1b267046422ea3e4 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5d7aa0707d5e9ea (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_920918eae157866e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_85853039f1c92d25 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a23d9f87288342a (" + , " 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_36b7233c4f87bda5 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d7a6e0c87a6834a (" + , " 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_d5c1d1d75f5a7ae4 (" + , " 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_20a7cc40eb486e99 (" + , " 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_0cb47fea79afa2c8 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7d80b48c72cc7894 (" + , " 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_c6d7a53a724efec1 (" + , " 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_3820a7e1e83d8296 (" + , " 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_bacb38ca0f13d8aa (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_16b30a8fc984298b (" + , " 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_a47e2213afbda249 (" + , " 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_fe7bb9793815d5e0 (" + , " 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_463eec46fff1209f (" + , " 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_60c09f1a560dae94 (" + , " 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_9a3528968baf5289 (" + , " 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_953673c5e4a0c8fd (" + , " 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_b5cb495c6eae5022 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4672048456a96220 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a4230a0c3d3b12e1 (" + , " 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_3b2a048e24e49aa9 (" + , " 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_d6343fe8a29afa9b (" + , " 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_5c4e825bcebda451 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9a39c39e6360216 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1703e6c11abb9a83 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e8b6ea23703a082 (" + , " 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_f788816816990447 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8ecce7897e2d45b5 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_adcfd77a29977ec0 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5593b00ae296c349 (" + , " 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_1e9a5131ef54444e (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_75c35a97a1397891 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_235a5de2b487d7ef (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bf08cd8e89e4202a (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ffd01f4bb52ea21d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8678d6d9ba858bf5 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_017fcd0675fdf693 (" + , " 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_5d657bc1f3be35de (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_93a5773ac2f04863 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_44cb78e17349e614 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c09476bf36746cd6 (" + , " 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_85f61c24d7fa68ce (" + , " 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_5c8e29baa213a4ea (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_47f683874230e841 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f422e5c7e936c1a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d8d43cb6af226ea3 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee4ce6fc4e5438fd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9e9f64ddd5f58ffb (" + , " 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_b82c13aeb528655a (" + , " 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_e5de95a6e91ff480 (" + , " 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_4d9eec99ee3b5199 (" + , " 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_1b0f6385f3c19da8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_613a5ee12f8b9e9c (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6a114e5be0b6e52a (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_71beb62b3b252d83 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3faa7747b885c78 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9375590f35a05b01 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1b93f1224949ee5c (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7c5ee806dc18241a (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0260563e0ee4ccc9 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a1a5885ee94ad9c2 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ef7488e5d4adbb5 (" + , " 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_0f90ac789d74a555 (" + , " 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_a1b2fa087eda4c0b (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d1f52686578594e6 (" + , " 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_2c0a2d78cc2d271a (" + , " 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_b2cf1498e095872e (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e09898e961e61138 (" + , " 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_cc7c2e7564a633e6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e64c91c0b850ba29 (" + , " 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_1da617c9dbd1fb85 (" + , " 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_af4061bf53ef3a1a (" + , " 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_c14ffe7408308d75 (" + , " 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_73ad357a600d44b4 (" + , " 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_be2bdc8f68bb03b2 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e468e7a7cb328b64 (" + , " 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_b04c16372b2cbcce (" + , " 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_f4428ef40963cceb (" + , " 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_6e97d2468d473367 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_04a2243796d530ff (" + , " 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_a00904e2c772e4e8 (" + , " 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_a7e234729a49d93f (" + , " 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_334bc4bbce7919cc (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8755c9de1fe5acf2 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f2e68cac99baace (" + , " 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_e891f44560c7e958 (" + , " 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_eb2945e768989814 (" + , " 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_f2ed12794195afd0 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e921114081e063ed (" + , " 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_3b163e297d8e2111 (" + , " 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_036f53b6f5109f5f (" + , " 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_afcb2a7f016be038 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b6d065b80d70306c (" + , " 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_32b1171e7c9653ea (" + , " 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_bc87373324e9dd1e (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b042d7ee39f62887 (" + , " 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_0ce0d32b1a5af246 (" + , " 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_f3532871d04e94e9 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6e4026023821b326 (" + , " 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_4d38a292e5efed86 (" + , " 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_2117f56dfb5375cb (" + , " 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_a1b1307e056727d1 (" + , " 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_c6e6c50bfc3a3013 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7161b22f16a181a4 (" + , " 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_9cd50f79b7b957f3 (" + , " 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_d345c7b52effadc5 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_74722f6158507628 (" + , " 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_9667b803fc62e79f (" + , " 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_c29bf39c7a748c82 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_be5a57b44c979399 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e4b7a1ef7581a4e1 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b81638feb5fd4b52 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_01aafdd3dafcaf20 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c336c52332471535 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_63a4e396cd0ed614 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cda53b369297ee54 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f3f72eb31216237 (" + , " 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_cc6a7a15e16832c7 (" + , " 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_60dc8451d3031324 (" + , " 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_fac578c1f4bf9d81 (" + , " 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_e5ed1ac9b2055112 (" + , " 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_8ad16a1f213ae5f6 (" + , " 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_92a0593ef60f34c6 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_33fcc127226c53c1 (" + , " 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_7edcb6edddb6ec5f (" + , " 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_71e71c9f8e1d9143 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3138a22dd18460b9 (" + , " 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_bd9387d8baf05f85 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8801612155bcc03a (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cce4007090e44e88 (" + , " 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_80d4cdf8e3a6ebfe (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_fd53b610df35c16d (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5018ef3d2a9a748e (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aea66312b551aaaa (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_04a8dc4805361fb3 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1119e49edde26e74 (" + , " 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_1812507dd2388da2 (" + , " 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_1ffde3ba8335e4d7 (" + , " 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_fcac36442a272c2f (" + , " 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_bf7f78e037b9dd36 (" + , " 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_1f475c4c5a369178 (" + , " 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_e5ad1b286e4090e7 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c8ab482e3b178edc (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5573e6f2740558cc (" + , " 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_3dcc12ded501252a (" + , " 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_7fae1c1adf79f30c (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_72c45d15d1d173ba (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f646b161abf59360 (" + , " 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_dde2b02e4bd5aea6 (" + , " 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_ad96ce542b3f8ff4 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4cd6db16bcf446e3 (" + , " 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_5fb6627ad477adf0 (" + , " 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_d7e68bace945f2b0 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_6f97706d0e709816 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c515d98ac1ff72ac (" + , " 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_b22c0ba0a14d99a6 (" + , " 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_e0f851b6c4c17214 (" + , " 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_10993127792a5d0f (" + , " 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_500e6208aad32868 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7afef8790ec69587 (" + , " 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_745832a168f0777a (" + , " 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_1_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_2a83148b19d9f0c4" hs_bindgen_2a83148b19d9f0c4 :: + 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:144: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_2a83148b19d9f0c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_178a649452cb0ae6" hs_bindgen_178a649452cb0ae6 :: + 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:153: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_178a649452cb0ae6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_6ba11d76843e2d42" hs_bindgen_6ba11d76843e2d42 :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_6ba11d76843e2d42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_e522e136771e2670" hs_bindgen_e522e136771e2670 :: + 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:166: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_e522e136771e2670 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_9bd72855e3a2a5dc" hs_bindgen_9bd72855e3a2a5dc :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_9bd72855e3a2a5dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_da6836a07e43e0d0" hs_bindgen_da6836a07e43e0d0 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_da6836a07e43e0d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_41249e1a66696390" hs_bindgen_41249e1a66696390 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_41249e1a66696390 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_f4c1b4a8912c3ea1" hs_bindgen_f4c1b4a8912c3ea1 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_f4c1b4a8912c3ea1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_d60013317dbc9742" hs_bindgen_d60013317dbc9742 :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_d60013317dbc9742 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_d2c9c8e06e35b1d5" hs_bindgen_d2c9c8e06e35b1d5 :: + 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:197: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_d2c9c8e06e35b1d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_b9bc07c444d6f744" hs_bindgen_b9bc07c444d6f744 :: + 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:203: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_b9bc07c444d6f744 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_8181565160cba2c0" hs_bindgen_8181565160cba2c0 :: + 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:209: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_8181565160cba2c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_6f895e0dbcc393d7" hs_bindgen_6f895e0dbcc393d7 :: + 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:221: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_6f895e0dbcc393d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_28990ce477783950" hs_bindgen_28990ce477783950 :: + 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:231: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_28990ce477783950 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_0d1f7a4a329908d3" hs_bindgen_0d1f7a4a329908d3 :: + 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:236:28@ + +__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_0d1f7a4a329908d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_f2fed4ace3369fe9" hs_bindgen_f2fed4ace3369fe9 :: + 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:241: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_f2fed4ace3369fe9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_8be2cf2eae10ca7d" hs_bindgen_8be2cf2eae10ca7d :: + 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:258: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 "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_8be2cf2eae10ca7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_539382c07c2647d2" hs_bindgen_539382c07c2647d2 :: + 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:270: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_539382c07c2647d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_1b2974814cf4ffe1" hs_bindgen_1b2974814cf4ffe1 :: + 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:284: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_1b2974814cf4ffe1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_d0c0030263cb4337" hs_bindgen_d0c0030263cb4337 :: + 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:292: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_d0c0030263cb4337 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_2d67cf8c55e73aa5" hs_bindgen_2d67cf8c55e73aa5 :: + 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:302: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_2d67cf8c55e73aa5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_12b6df554f8d57be" hs_bindgen_12b6df554f8d57be :: + 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:312: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_12b6df554f8d57be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_d8c2072c9e3a0c51" hs_bindgen_d8c2072c9e3a0c51 :: + 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:322: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_d8c2072c9e3a0c51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_cd9545af0722916b" hs_bindgen_cd9545af0722916b :: + 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:329: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_cd9545af0722916b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_0594927ba83d1dc9" hs_bindgen_0594927ba83d1dc9 :: + 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:343: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_0594927ba83d1dc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_53342e17c92f658a" hs_bindgen_53342e17c92f658a :: + 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:351: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_53342e17c92f658a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_d753d20b64bafbf1" hs_bindgen_d753d20b64bafbf1 :: + 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:359: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_d753d20b64bafbf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_5ebaee2eb5a62e3e" hs_bindgen_5ebaee2eb5a62e3e :: + 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:367: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_5ebaee2eb5a62e3e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_3d03c438590ad5d0" hs_bindgen_3d03c438590ad5d0 :: + 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:376: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_3d03c438590ad5d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_fbf7f36c0e24e92d" hs_bindgen_fbf7f36c0e24e92d :: + 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:386: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_fbf7f36c0e24e92d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_4ac149acb731604f" hs_bindgen_4ac149acb731604f :: + 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:394: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_4ac149acb731604f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_b78f0ee38defcbcb" hs_bindgen_b78f0ee38defcbcb :: + 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:401: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_b78f0ee38defcbcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_cd7ff08e6f5a7e7a" hs_bindgen_cd7ff08e6f5a7e7a :: + 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:409: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_cd7ff08e6f5a7e7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_2731b5f49062dc20" hs_bindgen_2731b5f49062dc20 :: + 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:424: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_2731b5f49062dc20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_06dc18148a96d33d" hs_bindgen_06dc18148a96d33d :: + 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:432: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_06dc18148a96d33d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_dd61a269f82ec5fd" hs_bindgen_dd61a269f82ec5fd :: + 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:441: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_dd61a269f82ec5fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_36e5b608a4ffc0e1" hs_bindgen_36e5b608a4ffc0e1 :: + 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:450: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_36e5b608a4ffc0e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_9fd346fe19a4a4fd" hs_bindgen_9fd346fe19a4a4fd :: + 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:459: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_9fd346fe19a4a4fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_d2a2d6d355812515" hs_bindgen_d2a2d6d355812515 :: + 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:469: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_d2a2d6d355812515 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_24d6a363f9d13497" hs_bindgen_24d6a363f9d13497 :: + 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:477: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_24d6a363f9d13497 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_4c19e806ad6a3cad" hs_bindgen_4c19e806ad6a3cad :: + 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:485: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_4c19e806ad6a3cad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_1acf0dcea0091a48" hs_bindgen_1acf0dcea0091a48 :: + 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:495: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_1acf0dcea0091a48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_c5661ae3e6c2c2b0" hs_bindgen_c5661ae3e6c2c2b0 :: + 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:505: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_c5661ae3e6c2c2b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_c7b57928e94eecbd" hs_bindgen_c7b57928e94eecbd :: + 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:519: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_c7b57928e94eecbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_03e66899ffaf8450" hs_bindgen_03e66899ffaf8450 :: + 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:524: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_03e66899ffaf8450 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_99372e658cad7707" hs_bindgen_99372e658cad7707 :: + 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:529: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_99372e658cad7707 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_cc011606ff403555" hs_bindgen_cc011606ff403555 :: + 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:534: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_cc011606ff403555 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_c450a830ee9f9d3f" hs_bindgen_c450a830ee9f9d3f :: + 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:539: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_c450a830ee9f9d3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_cf39f0b2c8b1d46f" hs_bindgen_cf39f0b2c8b1d46f :: + 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:544: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_cf39f0b2c8b1d46f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_136f18e2ab60c4bb" hs_bindgen_136f18e2ab60c4bb :: + 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:550: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_136f18e2ab60c4bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_3ea08167eee54f88" hs_bindgen_3ea08167eee54f88 :: + 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:556: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_3ea08167eee54f88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_e9adc8f737b9b0e9" hs_bindgen_e9adc8f737b9b0e9 :: + 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:562:5@ + +__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_e9adc8f737b9b0e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_36aecbc59edbd4b9" hs_bindgen_36aecbc59edbd4b9 :: + 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:568:5@ + +__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_36aecbc59edbd4b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_95088c01d63114e4" hs_bindgen_95088c01d63114e4 :: + 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:573: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_95088c01d63114e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_b7280649a7bd6c83" hs_bindgen_b7280649a7bd6c83 :: + 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:583:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_b7280649a7bd6c83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_9843c79181b014a4" hs_bindgen_9843c79181b014a4 :: + 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:588: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_9843c79181b014a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_f4e0d4b6a0234eac" hs_bindgen_f4e0d4b6a0234eac :: + 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:593: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_f4e0d4b6a0234eac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_2aca894abfec1433" hs_bindgen_2aca894abfec1433 :: + 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_2aca894abfec1433 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:601: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_2aca894abfec1433 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_d59ff0da664cedc5" hs_bindgen_d59ff0da664cedc5 :: + 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:613:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_d59ff0da664cedc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_600af166926da267" hs_bindgen_600af166926da267 :: + 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:619:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_600af166926da267 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_4c545428c1e3090b" hs_bindgen_4c545428c1e3090b :: + 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_4c545428c1e3090b + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:638: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_4c545428c1e3090b x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_3dda96912c8114a1" hs_bindgen_3dda96912c8114a1 :: + 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_3dda96912c8114a1 + +{-| 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:671: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_3dda96912c8114a1 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_93607193a2bb5eda" hs_bindgen_93607193a2bb5eda :: + 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_93607193a2bb5eda + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:695: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_93607193a2bb5eda x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_867055822f4b5279" hs_bindgen_867055822f4b5279 :: + 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_867055822f4b5279 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:722: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_867055822f4b5279 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_7f100ae3119e0a68" hs_bindgen_7f100ae3119e0a68 :: + 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_7f100ae3119e0a68 + +{-| 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:741: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_7f100ae3119e0a68 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_82ab8a68b7320603" hs_bindgen_82ab8a68b7320603 :: + 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_82ab8a68b7320603 + +{-| 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:764: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_82ab8a68b7320603 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_1_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_1a10e99a160ddabe" hs_bindgen_1a10e99a160ddabe :: + 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:782: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_1a10e99a160ddabe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_c47f2cd2210481e6" hs_bindgen_c47f2cd2210481e6 :: + 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:788: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_c47f2cd2210481e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_3c91256e8456f1d2" hs_bindgen_3c91256e8456f1d2 :: + 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:794: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_3c91256e8456f1d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_5d160910c3d7cc1e" hs_bindgen_5d160910c3d7cc1e :: + 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_5d160910c3d7cc1e + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:799: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_5d160910c3d7cc1e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_62ba18d663a7e02a" hs_bindgen_62ba18d663a7e02a :: + 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:805: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_62ba18d663a7e02a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_d45b9fb2ef853ef3" hs_bindgen_d45b9fb2ef853ef3 :: + 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_d45b9fb2ef853ef3 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:811: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_d45b9fb2ef853ef3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_e6eea97f1cdc8106" hs_bindgen_e6eea97f1cdc8106 :: + 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_e6eea97f1cdc8106 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:817: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_e6eea97f1cdc8106 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_17be4360f32f5050" hs_bindgen_17be4360f32f5050 :: + 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:825: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_17be4360f32f5050 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_efa124dac6ab67b3" hs_bindgen_efa124dac6ab67b3 :: + 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:835: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_efa124dac6ab67b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_9de73b396739c087" hs_bindgen_9de73b396739c087 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:848: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_9de73b396739c087 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_87464e07bfedbcc1" hs_bindgen_87464e07bfedbcc1 :: + 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:854:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_87464e07bfedbcc1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_8a9cbf715d2b81d5" hs_bindgen_8a9cbf715d2b81d5 :: + 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:859: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_8a9cbf715d2b81d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_df2f298e6bb7333c" hs_bindgen_df2f298e6bb7333c :: + 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:864:28@ + +__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_df2f298e6bb7333c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_07bc925cd8c50756" hs_bindgen_07bc925cd8c50756 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:869:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_07bc925cd8c50756 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_4bbd5573e8a5217e" hs_bindgen_4bbd5573e8a5217e :: + 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:874: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_4bbd5573e8a5217e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_d961a0f73026a7fb" hs_bindgen_d961a0f73026a7fb :: + 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:879: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_d961a0f73026a7fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_52d0a644023156c6" hs_bindgen_52d0a644023156c6 :: + 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:884: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_52d0a644023156c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_becc4cc23a20ecb3" hs_bindgen_becc4cc23a20ecb3 :: + 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:890: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_becc4cc23a20ecb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_fd14ffbad51b15df" hs_bindgen_fd14ffbad51b15df :: + 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:895: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_fd14ffbad51b15df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_08e527a4ed15bc3a" hs_bindgen_08e527a4ed15bc3a :: + 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:900: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_08e527a4ed15bc3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_7ab8a3102bf8e6da" hs_bindgen_7ab8a3102bf8e6da :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:905: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_7ab8a3102bf8e6da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_049dc54cc230339f" hs_bindgen_049dc54cc230339f :: + 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_049dc54cc230339f + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:910: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_049dc54cc230339f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_a1f60e327b8ef741" hs_bindgen_a1f60e327b8ef741 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:915: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_a1f60e327b8ef741 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_cafa12038018a59d" hs_bindgen_cafa12038018a59d :: + 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:922: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_cafa12038018a59d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_68cbad07069d7ecd" hs_bindgen_68cbad07069d7ecd :: + 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:927: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_68cbad07069d7ecd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_d960c6fced1fd311" hs_bindgen_d960c6fced1fd311 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:929: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_d960c6fced1fd311 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_d77b9b2dfc954bf3" hs_bindgen_d77b9b2dfc954bf3 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:931: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_d77b9b2dfc954bf3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_5691c88cec422885" hs_bindgen_5691c88cec422885 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:933: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_5691c88cec422885 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_f095c80117547653" hs_bindgen_f095c80117547653 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:934: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_f095c80117547653 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_7676f7bf33ac3e96" hs_bindgen_7676f7bf33ac3e96 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:936: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_7676f7bf33ac3e96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_2d2f7605f13b980c" hs_bindgen_2d2f7605f13b980c :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:937: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_2d2f7605f13b980c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_0a4d5cee6f13168f" hs_bindgen_0a4d5cee6f13168f :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:939: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_0a4d5cee6f13168f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_44d26522228e9f12" hs_bindgen_44d26522228e9f12 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:940: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_44d26522228e9f12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_3ff2bb61cd173d15" hs_bindgen_3ff2bb61cd173d15 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:941: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_3ff2bb61cd173d15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_ea8f90113ac4c978" hs_bindgen_ea8f90113ac4c978 :: + 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:944: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_ea8f90113ac4c978 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_0e972b888b274cc4" hs_bindgen_0e972b888b274cc4 :: + 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:947: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_0e972b888b274cc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_f7e333bb50771d1e" hs_bindgen_f7e333bb50771d1e :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:954: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_f7e333bb50771d1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_f701af5e8cfcd1dd" hs_bindgen_f701af5e8cfcd1dd :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:961: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_f701af5e8cfcd1dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_2e0809d29e8ca463" hs_bindgen_2e0809d29e8ca463 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:966: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_2e0809d29e8ca463 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_948a0fcd1b9d6601" hs_bindgen_948a0fcd1b9d6601 :: + 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:970: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_948a0fcd1b9d6601 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_6c01b0dc6d743ece" hs_bindgen_6c01b0dc6d743ece :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:972: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_6c01b0dc6d743ece + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_54fe76c7302ba579" hs_bindgen_54fe76c7302ba579 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:973: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_54fe76c7302ba579 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_a18201d1dfef5a4e" hs_bindgen_a18201d1dfef5a4e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:975: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_a18201d1dfef5a4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_1de24aa5c3ee1317" hs_bindgen_1de24aa5c3ee1317 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:977: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_1de24aa5c3ee1317 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_5f193973f4391125" hs_bindgen_5f193973f4391125 :: + 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:980: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_5f193973f4391125 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_30d1d6a24ad98ecb" hs_bindgen_30d1d6a24ad98ecb :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:985: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_30d1d6a24ad98ecb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_8d033ea6ccaca2cc" hs_bindgen_8d033ea6ccaca2cc :: + 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:992: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_8d033ea6ccaca2cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_ebad78abeeffa2d6" hs_bindgen_ebad78abeeffa2d6 :: + 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:999: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_ebad78abeeffa2d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_9c63c004bb1db223" hs_bindgen_9c63c004bb1db223 :: + 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:1004: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_9c63c004bb1db223 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_58a3eb6a7e7478d0" hs_bindgen_58a3eb6a7e7478d0 :: + 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:1009: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_58a3eb6a7e7478d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_b59eb3a5c6972ec2" hs_bindgen_b59eb3a5c6972ec2 :: + 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:1027: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_b59eb3a5c6972ec2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_fd4e8a70419ea7a6" hs_bindgen_fd4e8a70419ea7a6 :: + 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:1038: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_fd4e8a70419ea7a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_b530a26a661602b8" hs_bindgen_b530a26a661602b8 :: + 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:1054: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_b530a26a661602b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_1b267046422ea3e4" hs_bindgen_1b267046422ea3e4 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1058: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_1b267046422ea3e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_e5d7aa0707d5e9ea" hs_bindgen_e5d7aa0707d5e9ea :: + 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:1061: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_e5d7aa0707d5e9ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_920918eae157866e" hs_bindgen_920918eae157866e :: + 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:1063: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_920918eae157866e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_85853039f1c92d25" hs_bindgen_85853039f1c92d25 :: + 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:1065: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_85853039f1c92d25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_4a23d9f87288342a" hs_bindgen_4a23d9f87288342a :: + 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:1067: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_4a23d9f87288342a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_36b7233c4f87bda5" hs_bindgen_36b7233c4f87bda5 :: + 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:1069: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_36b7233c4f87bda5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_5d7a6e0c87a6834a" hs_bindgen_5d7a6e0c87a6834a :: + 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:1089: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_5d7a6e0c87a6834a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_d5c1d1d75f5a7ae4" hs_bindgen_d5c1d1d75f5a7ae4 :: + 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:1111: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_d5c1d1d75f5a7ae4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_20a7cc40eb486e99" hs_bindgen_20a7cc40eb486e99 :: + 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_20a7cc40eb486e99 + +{-| 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:1119: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_20a7cc40eb486e99 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_0cb47fea79afa2c8" hs_bindgen_0cb47fea79afa2c8 :: + 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:1124:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_0cb47fea79afa2c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_7d80b48c72cc7894" hs_bindgen_7d80b48c72cc7894 :: + 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:1136: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_7d80b48c72cc7894 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_c6d7a53a724efec1" hs_bindgen_c6d7a53a724efec1 :: + 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:1141: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_c6d7a53a724efec1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_3820a7e1e83d8296" hs_bindgen_3820a7e1e83d8296 :: + 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:1146: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_3820a7e1e83d8296 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_bacb38ca0f13d8aa" hs_bindgen_bacb38ca0f13d8aa :: + 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:1148: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_bacb38ca0f13d8aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_16b30a8fc984298b" hs_bindgen_16b30a8fc984298b :: + 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:1155: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_16b30a8fc984298b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_a47e2213afbda249" hs_bindgen_a47e2213afbda249 :: + 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:1170: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_a47e2213afbda249 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_fe7bb9793815d5e0" hs_bindgen_fe7bb9793815d5e0 :: + 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:1185: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_fe7bb9793815d5e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_463eec46fff1209f" hs_bindgen_463eec46fff1209f :: + 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:1202: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_463eec46fff1209f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_60c09f1a560dae94" hs_bindgen_60c09f1a560dae94 :: + 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:1217: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_60c09f1a560dae94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_9a3528968baf5289" hs_bindgen_9a3528968baf5289 :: + 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:1233: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_9a3528968baf5289 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_953673c5e4a0c8fd" hs_bindgen_953673c5e4a0c8fd :: + 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:1248: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_953673c5e4a0c8fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_b5cb495c6eae5022" hs_bindgen_b5cb495c6eae5022 :: + 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_b5cb495c6eae5022 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1259: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_b5cb495c6eae5022 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_4672048456a96220" hs_bindgen_4672048456a96220 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1261: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_4672048456a96220 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_a4230a0c3d3b12e1" hs_bindgen_a4230a0c3d3b12e1 :: + 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:1263: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_a4230a0c3d3b12e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_3b2a048e24e49aa9" hs_bindgen_3b2a048e24e49aa9 :: + 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:1268: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_3b2a048e24e49aa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_d6343fe8a29afa9b" hs_bindgen_d6343fe8a29afa9b :: + 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:1273: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_d6343fe8a29afa9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_5c4e825bcebda451" hs_bindgen_5c4e825bcebda451 :: + 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:1275: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_5c4e825bcebda451 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_e9a39c39e6360216" hs_bindgen_e9a39c39e6360216 :: + 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:1280: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_e9a39c39e6360216 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_1703e6c11abb9a83" hs_bindgen_1703e6c11abb9a83 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1282: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_1703e6c11abb9a83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_3e8b6ea23703a082" hs_bindgen_3e8b6ea23703a082 :: + 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:1285: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_3e8b6ea23703a082 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_f788816816990447" hs_bindgen_f788816816990447 :: + 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:1290:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_f788816816990447 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_8ecce7897e2d45b5" hs_bindgen_8ecce7897e2d45b5 :: + 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:1295: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_8ecce7897e2d45b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_adcfd77a29977ec0" hs_bindgen_adcfd77a29977ec0 :: + 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:1297: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_adcfd77a29977ec0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_5593b00ae296c349" hs_bindgen_5593b00ae296c349 :: + 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:1302: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_5593b00ae296c349 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_1e9a5131ef54444e" hs_bindgen_1e9a5131ef54444e :: + 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_1e9a5131ef54444e + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1304: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_1e9a5131ef54444e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_75c35a97a1397891" hs_bindgen_75c35a97a1397891 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1307: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_75c35a97a1397891 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_235a5de2b487d7ef" hs_bindgen_235a5de2b487d7ef :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1309: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_235a5de2b487d7ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_bf08cd8e89e4202a" hs_bindgen_bf08cd8e89e4202a :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1311: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_bf08cd8e89e4202a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_ffd01f4bb52ea21d" hs_bindgen_ffd01f4bb52ea21d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1313: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_ffd01f4bb52ea21d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_8678d6d9ba858bf5" hs_bindgen_8678d6d9ba858bf5 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1315: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_8678d6d9ba858bf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_017fcd0675fdf693" hs_bindgen_017fcd0675fdf693 :: + 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:1318: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_017fcd0675fdf693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_5d657bc1f3be35de" hs_bindgen_5d657bc1f3be35de :: + 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:1320: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_5d657bc1f3be35de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_93a5773ac2f04863" hs_bindgen_93a5773ac2f04863 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1323: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_93a5773ac2f04863 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_44cb78e17349e614" hs_bindgen_44cb78e17349e614 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1325: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_44cb78e17349e614 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_c09476bf36746cd6" hs_bindgen_c09476bf36746cd6 :: + 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:1331: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_c09476bf36746cd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_85f61c24d7fa68ce" hs_bindgen_85f61c24d7fa68ce :: + 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:1334: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_85f61c24d7fa68ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_5c8e29baa213a4ea" hs_bindgen_5c8e29baa213a4ea :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1337: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_5c8e29baa213a4ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_47f683874230e841" hs_bindgen_47f683874230e841 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1340: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_47f683874230e841 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_6f422e5c7e936c1a" hs_bindgen_6f422e5c7e936c1a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1342: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_6f422e5c7e936c1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_d8d43cb6af226ea3" hs_bindgen_d8d43cb6af226ea3 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1344: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_d8d43cb6af226ea3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_ee4ce6fc4e5438fd" hs_bindgen_ee4ce6fc4e5438fd :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1346: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_ee4ce6fc4e5438fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_9e9f64ddd5f58ffb" hs_bindgen_9e9f64ddd5f58ffb :: + 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:1361: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_9e9f64ddd5f58ffb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_b82c13aeb528655a" hs_bindgen_b82c13aeb528655a :: + 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:1375: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_b82c13aeb528655a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_e5de95a6e91ff480" hs_bindgen_e5de95a6e91ff480 :: + 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:1393: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_e5de95a6e91ff480 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_4d9eec99ee3b5199" hs_bindgen_4d9eec99ee3b5199 :: + 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:1408: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_4d9eec99ee3b5199 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_1b0f6385f3c19da8" hs_bindgen_1b0f6385f3c19da8 :: + 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_1b0f6385f3c19da8 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1414: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_1b0f6385f3c19da8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_613a5ee12f8b9e9c" hs_bindgen_613a5ee12f8b9e9c :: + 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_613a5ee12f8b9e9c + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1416: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_613a5ee12f8b9e9c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_6a114e5be0b6e52a" hs_bindgen_6a114e5be0b6e52a :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1418: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_6a114e5be0b6e52a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_71beb62b3b252d83" hs_bindgen_71beb62b3b252d83 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1420: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_71beb62b3b252d83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_b3faa7747b885c78" hs_bindgen_b3faa7747b885c78 :: + 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_b3faa7747b885c78 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1426: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_b3faa7747b885c78 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_9375590f35a05b01" hs_bindgen_9375590f35a05b01 :: + 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_9375590f35a05b01 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1428: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_9375590f35a05b01 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_1b93f1224949ee5c" hs_bindgen_1b93f1224949ee5c :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1430: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_1b93f1224949ee5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_7c5ee806dc18241a" hs_bindgen_7c5ee806dc18241a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1432: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_7c5ee806dc18241a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_0260563e0ee4ccc9" hs_bindgen_0260563e0ee4ccc9 :: + 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_0260563e0ee4ccc9 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1438: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_0260563e0ee4ccc9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_a1a5885ee94ad9c2" hs_bindgen_a1a5885ee94ad9c2 :: + 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_a1a5885ee94ad9c2 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1440: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_a1a5885ee94ad9c2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_0ef7488e5d4adbb5" hs_bindgen_0ef7488e5d4adbb5 :: + 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:1443: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_0ef7488e5d4adbb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_0f90ac789d74a555" hs_bindgen_0f90ac789d74a555 :: + 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:1446: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_0f90ac789d74a555 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_a1b2fa087eda4c0b" hs_bindgen_a1b2fa087eda4c0b :: + 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:1452: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_a1b2fa087eda4c0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_d1f52686578594e6" hs_bindgen_d1f52686578594e6 :: + 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:1455: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_d1f52686578594e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_2c0a2d78cc2d271a" hs_bindgen_2c0a2d78cc2d271a :: + 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:1461: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_2c0a2d78cc2d271a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_b2cf1498e095872e" hs_bindgen_b2cf1498e095872e :: + 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:1467: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_b2cf1498e095872e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_e09898e961e61138" hs_bindgen_e09898e961e61138 :: + 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:1470: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_e09898e961e61138 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_cc7c2e7564a633e6" hs_bindgen_cc7c2e7564a633e6 :: + 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:1476: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_cc7c2e7564a633e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_e64c91c0b850ba29" hs_bindgen_e64c91c0b850ba29 :: + 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:1480: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_e64c91c0b850ba29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_1da617c9dbd1fb85" hs_bindgen_1da617c9dbd1fb85 :: + 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:1487: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_1da617c9dbd1fb85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_af4061bf53ef3a1a" hs_bindgen_af4061bf53ef3a1a :: + 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:1490: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_af4061bf53ef3a1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_c14ffe7408308d75" hs_bindgen_c14ffe7408308d75 :: + 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:1497: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_c14ffe7408308d75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_73ad357a600d44b4" hs_bindgen_73ad357a600d44b4 :: + 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:1505: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_73ad357a600d44b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_be2bdc8f68bb03b2" hs_bindgen_be2bdc8f68bb03b2 :: + 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:1510: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_be2bdc8f68bb03b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_e468e7a7cb328b64" hs_bindgen_e468e7a7cb328b64 :: + 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:1513: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_e468e7a7cb328b64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_b04c16372b2cbcce" hs_bindgen_b04c16372b2cbcce :: + 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_b04c16372b2cbcce + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1516: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_b04c16372b2cbcce x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_f4428ef40963cceb" hs_bindgen_f4428ef40963cceb :: + 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:1529: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_f4428ef40963cceb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_6e97d2468d473367" hs_bindgen_6e97d2468d473367 :: + 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:1534: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_6e97d2468d473367 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_04a2243796d530ff" hs_bindgen_04a2243796d530ff :: + 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:1537: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_04a2243796d530ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_a00904e2c772e4e8" hs_bindgen_a00904e2c772e4e8 :: + 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_a00904e2c772e4e8 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1540: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_a00904e2c772e4e8 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_a7e234729a49d93f" hs_bindgen_a7e234729a49d93f :: + 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:1552: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_a7e234729a49d93f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_334bc4bbce7919cc" hs_bindgen_334bc4bbce7919cc :: + 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:1557: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_334bc4bbce7919cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_8755c9de1fe5acf2" hs_bindgen_8755c9de1fe5acf2 :: + 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:1559: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_8755c9de1fe5acf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_7f2e68cac99baace" hs_bindgen_7f2e68cac99baace :: + 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_7f2e68cac99baace + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1561: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_7f2e68cac99baace x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_e891f44560c7e958" hs_bindgen_e891f44560c7e958 :: + 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:1564: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_e891f44560c7e958 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_eb2945e768989814" hs_bindgen_eb2945e768989814 :: + 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:1572: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_eb2945e768989814 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_f2ed12794195afd0" hs_bindgen_f2ed12794195afd0 :: + 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:1580: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_f2ed12794195afd0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_e921114081e063ed" hs_bindgen_e921114081e063ed :: + 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_e921114081e063ed + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1582: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_e921114081e063ed x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_3b163e297d8e2111" hs_bindgen_3b163e297d8e2111 :: + 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_3b163e297d8e2111 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1583: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_3b163e297d8e2111 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_036f53b6f5109f5f" hs_bindgen_036f53b6f5109f5f :: + 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:1591: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_036f53b6f5109f5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_afcb2a7f016be038" hs_bindgen_afcb2a7f016be038 :: + 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:1596: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_afcb2a7f016be038 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_b6d065b80d70306c" hs_bindgen_b6d065b80d70306c :: + 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:1598: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_b6d065b80d70306c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_32b1171e7c9653ea" hs_bindgen_32b1171e7c9653ea :: + 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:1601: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_32b1171e7c9653ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_bc87373324e9dd1e" hs_bindgen_bc87373324e9dd1e :: + 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:1603: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_bc87373324e9dd1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_b042d7ee39f62887" hs_bindgen_b042d7ee39f62887 :: + 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_b042d7ee39f62887 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1606: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_b042d7ee39f62887 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_0ce0d32b1a5af246" hs_bindgen_0ce0d32b1a5af246 :: + 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:1620: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_0ce0d32b1a5af246 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_f3532871d04e94e9" hs_bindgen_f3532871d04e94e9 :: + 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:1625: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_f3532871d04e94e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_6e4026023821b326" hs_bindgen_6e4026023821b326 :: + 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:1628: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_6e4026023821b326 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_4d38a292e5efed86" hs_bindgen_4d38a292e5efed86 :: + 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:1633: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_4d38a292e5efed86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_2117f56dfb5375cb" hs_bindgen_2117f56dfb5375cb :: + 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_2117f56dfb5375cb + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1637: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_2117f56dfb5375cb x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_a1b1307e056727d1" hs_bindgen_a1b1307e056727d1 :: + 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:1650: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_a1b1307e056727d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_c6e6c50bfc3a3013" hs_bindgen_c6e6c50bfc3a3013 :: + 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:1655: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_c6e6c50bfc3a3013 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_7161b22f16a181a4" hs_bindgen_7161b22f16a181a4 :: + 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:1658: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_7161b22f16a181a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_9cd50f79b7b957f3" hs_bindgen_9cd50f79b7b957f3 :: + 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_9cd50f79b7b957f3 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1663: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_9cd50f79b7b957f3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_d345c7b52effadc5" hs_bindgen_d345c7b52effadc5 :: + 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:1676: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_d345c7b52effadc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_74722f6158507628" hs_bindgen_74722f6158507628 :: + 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_74722f6158507628 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1683: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_74722f6158507628 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_9667b803fc62e79f" hs_bindgen_9667b803fc62e79f :: + 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_9667b803fc62e79f + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1698: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_9667b803fc62e79f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_c29bf39c7a748c82" hs_bindgen_c29bf39c7a748c82 :: + 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_c29bf39c7a748c82 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1713: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_c29bf39c7a748c82 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_be5a57b44c979399" hs_bindgen_be5a57b44c979399 :: + 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:1714: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_be5a57b44c979399 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_e4b7a1ef7581a4e1" hs_bindgen_e4b7a1ef7581a4e1 :: + 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:1719: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_e4b7a1ef7581a4e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_b81638feb5fd4b52" hs_bindgen_b81638feb5fd4b52 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1721: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_b81638feb5fd4b52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_01aafdd3dafcaf20" hs_bindgen_01aafdd3dafcaf20 :: + 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:1724: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_01aafdd3dafcaf20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_c336c52332471535" hs_bindgen_c336c52332471535 :: + 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:1725: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_c336c52332471535 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_63a4e396cd0ed614" hs_bindgen_63a4e396cd0ed614 :: + 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:1727: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_63a4e396cd0ed614 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_cda53b369297ee54" hs_bindgen_cda53b369297ee54 :: + 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:1728: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_cda53b369297ee54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_4f3f72eb31216237" hs_bindgen_4f3f72eb31216237 :: + 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:1731: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_4f3f72eb31216237 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_cc6a7a15e16832c7" hs_bindgen_cc6a7a15e16832c7 :: + 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:1733: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_cc6a7a15e16832c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_60dc8451d3031324" hs_bindgen_60dc8451d3031324 :: + 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:1734: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_60dc8451d3031324 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_fac578c1f4bf9d81" hs_bindgen_fac578c1f4bf9d81 :: + 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:1735: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_fac578c1f4bf9d81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_e5ed1ac9b2055112" hs_bindgen_e5ed1ac9b2055112 :: + 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:1737: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_e5ed1ac9b2055112 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_8ad16a1f213ae5f6" hs_bindgen_8ad16a1f213ae5f6 :: + 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:1740: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_8ad16a1f213ae5f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_92a0593ef60f34c6" hs_bindgen_92a0593ef60f34c6 :: + 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:1742: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_92a0593ef60f34c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_33fcc127226c53c1" hs_bindgen_33fcc127226c53c1 :: + 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:1745: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_33fcc127226c53c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_7edcb6edddb6ec5f" hs_bindgen_7edcb6edddb6ec5f :: + 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:1749: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_7edcb6edddb6ec5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_71e71c9f8e1d9143" hs_bindgen_71e71c9f8e1d9143 :: + 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:1752: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_71e71c9f8e1d9143 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_3138a22dd18460b9" hs_bindgen_3138a22dd18460b9 :: + 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:1755: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_3138a22dd18460b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_bd9387d8baf05f85" hs_bindgen_bd9387d8baf05f85 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1771: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_bd9387d8baf05f85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_8801612155bcc03a" hs_bindgen_8801612155bcc03a :: + 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:1777: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_8801612155bcc03a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_cce4007090e44e88" hs_bindgen_cce4007090e44e88 :: + 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:1788: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_cce4007090e44e88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_80d4cdf8e3a6ebfe" hs_bindgen_80d4cdf8e3a6ebfe :: + 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:1803: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_80d4cdf8e3a6ebfe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_fd53b610df35c16d" hs_bindgen_fd53b610df35c16d :: + 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:1811: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_fd53b610df35c16d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_5018ef3d2a9a748e" hs_bindgen_5018ef3d2a9a748e :: + 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_5018ef3d2a9a748e + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1813: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_5018ef3d2a9a748e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_aea66312b551aaaa" hs_bindgen_aea66312b551aaaa :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1815: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_aea66312b551aaaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_04a8dc4805361fb3" hs_bindgen_04a8dc4805361fb3 :: + 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:1821: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_04a8dc4805361fb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_1119e49edde26e74" hs_bindgen_1119e49edde26e74 :: + 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:1828: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_1119e49edde26e74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_1812507dd2388da2" hs_bindgen_1812507dd2388da2 :: + 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_1812507dd2388da2 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1846: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_1812507dd2388da2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_1ffde3ba8335e4d7" hs_bindgen_1ffde3ba8335e4d7 :: + 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_1ffde3ba8335e4d7 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1855: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_1ffde3ba8335e4d7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_fcac36442a272c2f" hs_bindgen_fcac36442a272c2f :: + 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_fcac36442a272c2f + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1863: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_fcac36442a272c2f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_bf7f78e037b9dd36" hs_bindgen_bf7f78e037b9dd36 :: + 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_bf7f78e037b9dd36 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1873: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_bf7f78e037b9dd36 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_1f475c4c5a369178" hs_bindgen_1f475c4c5a369178 :: + 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_1f475c4c5a369178 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1892: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_1f475c4c5a369178 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_e5ad1b286e4090e7" hs_bindgen_e5ad1b286e4090e7 :: + 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:1899:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_e5ad1b286e4090e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_c8ab482e3b178edc" hs_bindgen_c8ab482e3b178edc :: + 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:1905: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_c8ab482e3b178edc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_5573e6f2740558cc" hs_bindgen_5573e6f2740558cc :: + 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:1911: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_5573e6f2740558cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_3dcc12ded501252a" hs_bindgen_3dcc12ded501252a :: + 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_3dcc12ded501252a + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1924: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_3dcc12ded501252a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_7fae1c1adf79f30c" hs_bindgen_7fae1c1adf79f30c :: + 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:1932:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_7fae1c1adf79f30c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_72c45d15d1d173ba" hs_bindgen_72c45d15d1d173ba :: + 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:1941: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_72c45d15d1d173ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_f646b161abf59360" hs_bindgen_f646b161abf59360 :: + 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:1952: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_f646b161abf59360 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_dde2b02e4bd5aea6" hs_bindgen_dde2b02e4bd5aea6 :: + 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_dde2b02e4bd5aea6 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1963: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_dde2b02e4bd5aea6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_ad96ce542b3f8ff4" hs_bindgen_ad96ce542b3f8ff4 :: + 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:1970:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_ad96ce542b3f8ff4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_4cd6db16bcf446e3" hs_bindgen_4cd6db16bcf446e3 :: + 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_4cd6db16bcf446e3 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1973: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_4cd6db16bcf446e3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_5fb6627ad477adf0" hs_bindgen_5fb6627ad477adf0 :: + 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_5fb6627ad477adf0 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1976: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_5fb6627ad477adf0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_d7e68bace945f2b0" hs_bindgen_d7e68bace945f2b0 :: + 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:1988: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_d7e68bace945f2b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_6f97706d0e709816" hs_bindgen_6f97706d0e709816 :: + 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:1996: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_6f97706d0e709816 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_c515d98ac1ff72ac" hs_bindgen_c515d98ac1ff72ac :: + 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_c515d98ac1ff72ac + +{-| 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:2011: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_c515d98ac1ff72ac x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_b22c0ba0a14d99a6" hs_bindgen_b22c0ba0a14d99a6 :: + 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_b22c0ba0a14d99a6 + +{-| 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:2030: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_b22c0ba0a14d99a6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_e0f851b6c4c17214" hs_bindgen_e0f851b6c4c17214 :: + 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_e0f851b6c4c17214 + +{-| 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:2046: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_e0f851b6c4c17214 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_10993127792a5d0f" hs_bindgen_10993127792a5d0f :: + 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_10993127792a5d0f + +{-| 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:2073: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_10993127792a5d0f 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_1_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_500e6208aad32868" hs_bindgen_500e6208aad32868 :: + 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:2091: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_500e6208aad32868 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_7afef8790ec69587" hs_bindgen_7afef8790ec69587 :: + 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:2112: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_7afef8790ec69587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_745832a168f0777a" hs_bindgen_745832a168f0777a :: + 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:2133: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_745832a168f0777a diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/Unsafe.hs new file mode 100644 index 00000000..28a6c523 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_0/Unsafe.hs @@ -0,0 +1,12243 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_1_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_1_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_f1ec468f911cde13 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_489ddfb98451b58d (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_98606250d1548b2a (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_15e3347b55ae24d5 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_a140010a1bd3e152 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_016d393762bdaf25 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_a98d67111f792ef9 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_db473937fa2f2f94 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_62e9da80d9032547 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_07fbe8e8836fdb2d (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_670bc75035b4cd93 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fd0809c243d17a5f (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_db538b648274bfc2 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7b9c2f58da30c7da (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ee6c47e0392e298b (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ad8729c6c2a09574 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_281c08eb1f0f88d2 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3250a2937f6ad016 (" + , " 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_96c4acb8fd56566d (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aa2998c4554627ce (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0b804afb93b01a09 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_82a8bbdebd90650b (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27d62459f0d24a48 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_287da94c1d19a919 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8e482a17e2c178da (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_49b22f1f050b961f (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b7bb9051d73e3d16 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_27280e0577921497 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9e6f6a04687ce96a (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_187ee7d5595ee80a (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ddfbf38d88139605 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_ef3c7357e8e47716 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6fbf355ed54031c2 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d52d2304bd82cd5 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_212b29fd85431532 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3b294d43cbaf9ac4 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_20b0f68a8754a2ed (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_990a903d63db04c1 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_15608e10fcc41481 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4bb6404ff6296708 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_42d722adf4a52de8 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_be797d8dd16ba71b (" + , " 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_3fa10f5d1bb3822e (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d682b05ddf97762d (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cbcf09ca14d8bea7 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fa950db0d5c3cfaf (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3d14cc673c048d42 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8a555033c9bcbec9 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_30786d83ea17823a (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fcb763b8d9fcb7f9 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ab5e7ada580d49ec (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e96a61529e6fc6a0 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_229f22fcda6bca80 (" + , " 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_d9bb4b6098d41782 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e46df7ca1b881236 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_99b5f8c629f1b4bb (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23fbb9f8ea2293b5 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3be51aa191bb9f49 (" + , " 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_4c710c1fc90775cd (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_efd9103b62ba5a0b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0968617d6114c6e9 (" + , " 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_dd309112beb46772 (" + , " 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_6d166a9183f15864 (" + , " 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_fc05b0f01ecefdbf (" + , " 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_6361d624b5554003 (" + , " 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_80a2728704d721ea (" + , " 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_53fef44e80c8a4d6 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9a6f2bd60e421495 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f7a940d8589be4b6 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_bb238a11ce2331c5 (" + , " 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_d6507bf0e99920e6 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_34a8560ec14969f7 (" + , " 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_839462ac97c08175 (" + , " 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_fd5f635ebd932132 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_30a0a1899492be9f (" + , " 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_71a9ba6e42ddbae5 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_6d2cc3f82aa0b45a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ec5dfde693f36ea4 (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9d02e9e7af9d67c4 (" + , " 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_7783eeb873b183ef (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_889cc09cfb33bfec (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c384bc073492b21a (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0663072e36a60054 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b42238653f26f25d (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d521e38e7b849053 (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_09aa1e57b71ef80e (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_82cea5249f74187f (" + , " botan_mp_t const arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_06c64f9177c6b02c (" + , " botan_mp_t const arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b7a16c3d28538619 (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2be5fe1593bf3629 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_9f92ccbb26fb2e83 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_664ae5c3256852bf (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_31f16b30a12f282c (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_49ca8f959abb9521 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_a7f00c220a9e7ae9 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_dcd27c28a924e7c2 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_70f886b48fe0e04b (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f128e22507059d1e (" + , " 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_39bbd58a6298bc38 (" + , " 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_46d7d56305dc4ff1 (" + , " 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_45289966db9f3adf (" + , " 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_fead08ee013696d6 (" + , " 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_d2c217524dc44416 (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e675a2313517629c (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e840a4c41526e427 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1bc4f7ed3365459 (" + , " 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_6bb111e5227f3184 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_631495f484b9fa69 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4da3a4880ba1d073 (" + , " 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_4ab859bd89a10c81 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a5bba30f012a5805 (" + , " 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_ef308a8335d2e43d (" + , " 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_2f1aa9a79d9fe5d6 (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_675f3ca8fed96e8e (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eef13319a52aaed4 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f614ff79b0d29671 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_092a785e8e223d59 (" + , " 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_0cff0a2d8037e2a9 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e08d007ececc2ff (" + , " 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_94b2a27c906d1a84 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6b49b083d507c35e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ddf145984ce04bc1 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e10fdbd453b7eace (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7719eb0f14b142e2 (" + , " 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_ce04f3228fc2ff76 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d40fc03533d215af (" + , " 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_3b5eeb32400bb364 (" + , " 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_c1433fb48f490b1d (" + , " 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_148465f106e0206e (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f615e59b3a4944b0 (" + , " 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_3ba407a5bc7904c6 (" + , " 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_38a75511acdcd422 (" + , " 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_bccbd2b9b24466dd (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f6db200951c6b9e (" + , " 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_8fdb7fdad7a81c87 (" + , " 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_5ccd01458da22832 (" + , " 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_b43aa00fff883f9b (" + , " 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_efd4eed37eeecc1e (" + , " 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_089130628a70b907 (" + , " 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_601e6433f8decc93 (" + , " 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_05637cdf86bfbf5c (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f984f70684444273 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_baf3fac544a6f99f (" + , " 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_1cab1873e38c94ce (" + , " 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_08c67b6fb9e61a72 (" + , " 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_a4303448d5d3fe58 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_46678e518277b64a (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_48a39f0dacd8732a (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ad255e7841414d8 (" + , " 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_bb91469f8e62c252 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2fe843f7bcee6f92 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d2fdf5545b7cb19a (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ce51b4db97aa2eb9 (" + , " 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_deacda233a1f8b40 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_24e9b733da0594a9 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8311be835d65b3fa (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_abd755cacda0425d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_425ea613c9faa766 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a5b5f920b86bcaa1 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3bbd0b93b4ae9470 (" + , " 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_19c447fdb102ab2a (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e80d515e03f7d2c3 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0f2c65eb74cee791 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a7728f3fd2365ef (" + , " 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_6dd93b939b7d6516 (" + , " 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_fba9b0d16fa383bc (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0917138ec831e789 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0e196793cf3a6a5c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d9fdf0f6e73acffd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2169d6675929fd1e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_651928ec07cc18e6 (" + , " 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_e1904b4c4279a758 (" + , " 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_1fd8f4ee343124eb (" + , " 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_0fd2597df75eaf59 (" + , " 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_e1fc30a4ac0c1c4b (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_121eafc3c892fc80 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c07563a4781394df (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c7ae21aecf8be373 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_69c9460ade9f12c9 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f45d075b323e1ca0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18ec63be8e87fa46 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e19b4fb1287147ad (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_20101ab77ced24ee (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d552f3bee6617394 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_de87e103ccb99c6e (" + , " 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_607de0d08ca349cb (" + , " 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_f1160a66565462ac (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_975689310409e423 (" + , " 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_8b3026e6ae07f098 (" + , " 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_4abc5442b5b1c1d2 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aea5b133ea05685c (" + , " 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_6e2e5584e01c0eef (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c054dfb4be875e3 (" + , " 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_ba1abb3361e660b3 (" + , " 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_4bb55dbb20604e97 (" + , " 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_f057e7d37e42798b (" + , " 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_8690b28ea6b14e7f (" + , " 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_f27202d31ea1aeb9 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3641ecedd37ce1d6 (" + , " 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_49f15ba3b678981a (" + , " 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_3b65aa0c1a074001 (" + , " 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_b9db130ecf328281 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e1ee76a8c8170cb4 (" + , " 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_0b243627a4f2d0a3 (" + , " 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_b9733db6ae90b2a1 (" + , " 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_94798ceab8ee3ec9 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f0eaf61214f41ac5 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b00483b05012c132 (" + , " 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_f728f4ec4fa2b51e (" + , " 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_8c4396931c789098 (" + , " 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_be11a2b213c459f8 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_78427614271ad778 (" + , " 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_085d3128389f5b35 (" + , " 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_c5076ad2ca6832f5 (" + , " 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_d094aa20bce91b58 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1b7ac829eccdd164 (" + , " 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_fcc72acf35e5798e (" + , " 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_ac3623112245810f (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_058c56ebf286526b (" + , " 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_394a549efc27bcec (" + , " 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_034969d1a1038edc (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_69f3f571cded46a9 (" + , " 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_43a4294e023f73da (" + , " 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_99de160a83d3c198 (" + , " 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_f6ea422fae8cb635 (" + , " 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_0da4b10693def7ef (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c3ec8caa5d71602b (" + , " 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_942a7cf4d2a22103 (" + , " 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_7782d2456888b235 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a7c8b9615eaa99e2 (" + , " 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_0a956a4d921c1b3e (" + , " 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_76e901b81fed5769 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d04c157acf0d8f9 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53679652cca9a176 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_11d18c05e157d9bd (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3303fe27b4554b5d (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1dcdd625d0e565c8 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_215d56a9174f67dd (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_46d5e171b362f2e9 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ef7ee6dfb0b7262f (" + , " 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_b12604e331a2dd85 (" + , " 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_33279f8708639055 (" + , " 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_3ab9fc1430b7f632 (" + , " 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_9ba230f27fee57f3 (" + , " 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_cf72d89d998b444a (" + , " 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_b7fb6df04928ae54 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e8e9d5d91d894c5 (" + , " 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_83ad75661534a4d3 (" + , " 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_57df98dc490fa418 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9d6d4c5835ff679b (" + , " 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_b6af3a73c7106a8d (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7606257414eafc4e (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8586abf374015a6e (" + , " 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_3caf93fbaa79c7d4 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_be1e00ee4bdbdf1c (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c1074cd5085771f6 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d520f72907df3ff9 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_15f7f2cde2130c4a (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73a71f8c2593bd7f (" + , " 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_9786e8993b076393 (" + , " 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_e2fda1830178bff1 (" + , " 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_dd26eba720749550 (" + , " 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_e845eb4199cf4c1f (" + , " 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_fb571c272b5b32f7 (" + , " 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_785507060442580c (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_06ad7887185f4d80 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_01b7cc3358ac032a (" + , " 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_8488ee9185f4374e (" + , " 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_90f8a5d3f4adb829 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ba549aadf89d7fc3 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e68473ec543d213f (" + , " 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_7c5642e0541f2aa2 (" + , " 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_b4616074ca70881c (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_db9b9c350e30ecdb (" + , " 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_10534029be8b225c (" + , " 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_64dbbcab3c244ee6 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_def906a1417cb9fa (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d402b013a1691681 (" + , " 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_4d93b67494ea66f2 (" + , " 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_b2bdb97accbaac5b (" + , " 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_e580e5c43444abe4 (" + , " 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_7194d3cbc636fc7b (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7a28a974c3d1dbaf (" + , " 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_d77d9437d245f387 (" + , " 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_1_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_f1ec468f911cde13" hs_bindgen_f1ec468f911cde13 :: + 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:144: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_f1ec468f911cde13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_489ddfb98451b58d" hs_bindgen_489ddfb98451b58d :: + 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:153: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_489ddfb98451b58d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_98606250d1548b2a" hs_bindgen_98606250d1548b2a :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_98606250d1548b2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_15e3347b55ae24d5" hs_bindgen_15e3347b55ae24d5 :: + 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:166: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_15e3347b55ae24d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_a140010a1bd3e152" hs_bindgen_a140010a1bd3e152 :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_a140010a1bd3e152 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_016d393762bdaf25" hs_bindgen_016d393762bdaf25 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_016d393762bdaf25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_a98d67111f792ef9" hs_bindgen_a98d67111f792ef9 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_a98d67111f792ef9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_db473937fa2f2f94" hs_bindgen_db473937fa2f2f94 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_db473937fa2f2f94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_62e9da80d9032547" hs_bindgen_62e9da80d9032547 :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_62e9da80d9032547 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_07fbe8e8836fdb2d" hs_bindgen_07fbe8e8836fdb2d :: + 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:197: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_07fbe8e8836fdb2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_670bc75035b4cd93" hs_bindgen_670bc75035b4cd93 :: + 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:203: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_670bc75035b4cd93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_fd0809c243d17a5f" hs_bindgen_fd0809c243d17a5f :: + 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:209: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_fd0809c243d17a5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_db538b648274bfc2" hs_bindgen_db538b648274bfc2 :: + 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:221: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_db538b648274bfc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_7b9c2f58da30c7da" hs_bindgen_7b9c2f58da30c7da :: + 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:231: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_7b9c2f58da30c7da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_ee6c47e0392e298b" hs_bindgen_ee6c47e0392e298b :: + 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:236:28@ + +__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_ee6c47e0392e298b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_ad8729c6c2a09574" hs_bindgen_ad8729c6c2a09574 :: + 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:241: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_ad8729c6c2a09574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_281c08eb1f0f88d2" hs_bindgen_281c08eb1f0f88d2 :: + 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:258: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 "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_281c08eb1f0f88d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_3250a2937f6ad016" hs_bindgen_3250a2937f6ad016 :: + 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:270: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_3250a2937f6ad016 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_96c4acb8fd56566d" hs_bindgen_96c4acb8fd56566d :: + 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:284: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_96c4acb8fd56566d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_aa2998c4554627ce" hs_bindgen_aa2998c4554627ce :: + 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:292: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_aa2998c4554627ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_0b804afb93b01a09" hs_bindgen_0b804afb93b01a09 :: + 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:302: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_0b804afb93b01a09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_82a8bbdebd90650b" hs_bindgen_82a8bbdebd90650b :: + 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:312: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_82a8bbdebd90650b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_27d62459f0d24a48" hs_bindgen_27d62459f0d24a48 :: + 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:322: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_27d62459f0d24a48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_287da94c1d19a919" hs_bindgen_287da94c1d19a919 :: + 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:329: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_287da94c1d19a919 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_8e482a17e2c178da" hs_bindgen_8e482a17e2c178da :: + 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:343: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_8e482a17e2c178da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_49b22f1f050b961f" hs_bindgen_49b22f1f050b961f :: + 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:351: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_49b22f1f050b961f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_b7bb9051d73e3d16" hs_bindgen_b7bb9051d73e3d16 :: + 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:359: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_b7bb9051d73e3d16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_27280e0577921497" hs_bindgen_27280e0577921497 :: + 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:367: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_27280e0577921497 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_9e6f6a04687ce96a" hs_bindgen_9e6f6a04687ce96a :: + 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:376: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_9e6f6a04687ce96a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_187ee7d5595ee80a" hs_bindgen_187ee7d5595ee80a :: + 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:386: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_187ee7d5595ee80a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_ddfbf38d88139605" hs_bindgen_ddfbf38d88139605 :: + 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:394: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_ddfbf38d88139605 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_ef3c7357e8e47716" hs_bindgen_ef3c7357e8e47716 :: + 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:401: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_ef3c7357e8e47716 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_6fbf355ed54031c2" hs_bindgen_6fbf355ed54031c2 :: + 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:409: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_6fbf355ed54031c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_5d52d2304bd82cd5" hs_bindgen_5d52d2304bd82cd5 :: + 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:424: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_5d52d2304bd82cd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_212b29fd85431532" hs_bindgen_212b29fd85431532 :: + 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:432: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_212b29fd85431532 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_3b294d43cbaf9ac4" hs_bindgen_3b294d43cbaf9ac4 :: + 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:441: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_3b294d43cbaf9ac4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_20b0f68a8754a2ed" hs_bindgen_20b0f68a8754a2ed :: + 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:450: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_20b0f68a8754a2ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_990a903d63db04c1" hs_bindgen_990a903d63db04c1 :: + 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:459: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_990a903d63db04c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_15608e10fcc41481" hs_bindgen_15608e10fcc41481 :: + 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:469: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_15608e10fcc41481 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_4bb6404ff6296708" hs_bindgen_4bb6404ff6296708 :: + 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:477: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_4bb6404ff6296708 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_42d722adf4a52de8" hs_bindgen_42d722adf4a52de8 :: + 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:485: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_42d722adf4a52de8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_be797d8dd16ba71b" hs_bindgen_be797d8dd16ba71b :: + 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:495: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_be797d8dd16ba71b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_3fa10f5d1bb3822e" hs_bindgen_3fa10f5d1bb3822e :: + 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:505: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_3fa10f5d1bb3822e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_d682b05ddf97762d" hs_bindgen_d682b05ddf97762d :: + 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:519: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_d682b05ddf97762d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_cbcf09ca14d8bea7" hs_bindgen_cbcf09ca14d8bea7 :: + 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:524: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_cbcf09ca14d8bea7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_fa950db0d5c3cfaf" hs_bindgen_fa950db0d5c3cfaf :: + 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:529: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_fa950db0d5c3cfaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_3d14cc673c048d42" hs_bindgen_3d14cc673c048d42 :: + 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:534: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_3d14cc673c048d42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_8a555033c9bcbec9" hs_bindgen_8a555033c9bcbec9 :: + 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:539: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_8a555033c9bcbec9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_30786d83ea17823a" hs_bindgen_30786d83ea17823a :: + 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:544: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_30786d83ea17823a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_fcb763b8d9fcb7f9" hs_bindgen_fcb763b8d9fcb7f9 :: + 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:550: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_fcb763b8d9fcb7f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_ab5e7ada580d49ec" hs_bindgen_ab5e7ada580d49ec :: + 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:556: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_ab5e7ada580d49ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_e96a61529e6fc6a0" hs_bindgen_e96a61529e6fc6a0 :: + 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:562:5@ + +__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_e96a61529e6fc6a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_229f22fcda6bca80" hs_bindgen_229f22fcda6bca80 :: + 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:568:5@ + +__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_229f22fcda6bca80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_d9bb4b6098d41782" hs_bindgen_d9bb4b6098d41782 :: + 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:573: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_d9bb4b6098d41782 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_e46df7ca1b881236" hs_bindgen_e46df7ca1b881236 :: + 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:583:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_e46df7ca1b881236 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_99b5f8c629f1b4bb" hs_bindgen_99b5f8c629f1b4bb :: + 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:588: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_99b5f8c629f1b4bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_23fbb9f8ea2293b5" hs_bindgen_23fbb9f8ea2293b5 :: + 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:593: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_23fbb9f8ea2293b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_3be51aa191bb9f49" hs_bindgen_3be51aa191bb9f49 :: + 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_3be51aa191bb9f49 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:601: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_3be51aa191bb9f49 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_4c710c1fc90775cd" hs_bindgen_4c710c1fc90775cd :: + 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:613:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_4c710c1fc90775cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_efd9103b62ba5a0b" hs_bindgen_efd9103b62ba5a0b :: + 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:619:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_efd9103b62ba5a0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_0968617d6114c6e9" hs_bindgen_0968617d6114c6e9 :: + 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_0968617d6114c6e9 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:638: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_0968617d6114c6e9 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_dd309112beb46772" hs_bindgen_dd309112beb46772 :: + 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_dd309112beb46772 + +{-| 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:671: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_dd309112beb46772 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_6d166a9183f15864" hs_bindgen_6d166a9183f15864 :: + 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_6d166a9183f15864 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:695: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_6d166a9183f15864 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_fc05b0f01ecefdbf" hs_bindgen_fc05b0f01ecefdbf :: + 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_fc05b0f01ecefdbf + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:722: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_fc05b0f01ecefdbf x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_6361d624b5554003" hs_bindgen_6361d624b5554003 :: + 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_6361d624b5554003 + +{-| 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:741: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_6361d624b5554003 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_80a2728704d721ea" hs_bindgen_80a2728704d721ea :: + 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_80a2728704d721ea + +{-| 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:764: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_80a2728704d721ea 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_1_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_53fef44e80c8a4d6" hs_bindgen_53fef44e80c8a4d6 :: + 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:782: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_53fef44e80c8a4d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_9a6f2bd60e421495" hs_bindgen_9a6f2bd60e421495 :: + 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:788: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_9a6f2bd60e421495 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_f7a940d8589be4b6" hs_bindgen_f7a940d8589be4b6 :: + 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:794: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_f7a940d8589be4b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_bb238a11ce2331c5" hs_bindgen_bb238a11ce2331c5 :: + 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_bb238a11ce2331c5 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:799: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_bb238a11ce2331c5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_d6507bf0e99920e6" hs_bindgen_d6507bf0e99920e6 :: + 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:805: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_d6507bf0e99920e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_34a8560ec14969f7" hs_bindgen_34a8560ec14969f7 :: + 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_34a8560ec14969f7 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:811: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_34a8560ec14969f7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_839462ac97c08175" hs_bindgen_839462ac97c08175 :: + 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_839462ac97c08175 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:817: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_839462ac97c08175 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_fd5f635ebd932132" hs_bindgen_fd5f635ebd932132 :: + 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:825: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_fd5f635ebd932132 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_30a0a1899492be9f" hs_bindgen_30a0a1899492be9f :: + 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:835: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_30a0a1899492be9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_71a9ba6e42ddbae5" hs_bindgen_71a9ba6e42ddbae5 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:848: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_71a9ba6e42ddbae5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_6d2cc3f82aa0b45a" hs_bindgen_6d2cc3f82aa0b45a :: + 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:854:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_6d2cc3f82aa0b45a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_ec5dfde693f36ea4" hs_bindgen_ec5dfde693f36ea4 :: + 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:859: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_ec5dfde693f36ea4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_9d02e9e7af9d67c4" hs_bindgen_9d02e9e7af9d67c4 :: + 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:864:28@ + +__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_9d02e9e7af9d67c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_7783eeb873b183ef" hs_bindgen_7783eeb873b183ef :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:869:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_7783eeb873b183ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_889cc09cfb33bfec" hs_bindgen_889cc09cfb33bfec :: + 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:874: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_889cc09cfb33bfec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_c384bc073492b21a" hs_bindgen_c384bc073492b21a :: + 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:879: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_c384bc073492b21a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_0663072e36a60054" hs_bindgen_0663072e36a60054 :: + 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:884: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_0663072e36a60054 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_b42238653f26f25d" hs_bindgen_b42238653f26f25d :: + 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:890: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_b42238653f26f25d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_d521e38e7b849053" hs_bindgen_d521e38e7b849053 :: + 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:895: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_d521e38e7b849053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_09aa1e57b71ef80e" hs_bindgen_09aa1e57b71ef80e :: + 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:900: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_09aa1e57b71ef80e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_82cea5249f74187f" hs_bindgen_82cea5249f74187f :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:905: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_82cea5249f74187f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_06c64f9177c6b02c" hs_bindgen_06c64f9177c6b02c :: + 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_06c64f9177c6b02c + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:910: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_06c64f9177c6b02c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_b7a16c3d28538619" hs_bindgen_b7a16c3d28538619 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:915: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_b7a16c3d28538619 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_2be5fe1593bf3629" hs_bindgen_2be5fe1593bf3629 :: + 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:922: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_2be5fe1593bf3629 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_9f92ccbb26fb2e83" hs_bindgen_9f92ccbb26fb2e83 :: + 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:927: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_9f92ccbb26fb2e83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_664ae5c3256852bf" hs_bindgen_664ae5c3256852bf :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:929: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_664ae5c3256852bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_31f16b30a12f282c" hs_bindgen_31f16b30a12f282c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:931: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_31f16b30a12f282c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_49ca8f959abb9521" hs_bindgen_49ca8f959abb9521 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:933: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_49ca8f959abb9521 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_a7f00c220a9e7ae9" hs_bindgen_a7f00c220a9e7ae9 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:934: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_a7f00c220a9e7ae9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_dcd27c28a924e7c2" hs_bindgen_dcd27c28a924e7c2 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:936: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_dcd27c28a924e7c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_70f886b48fe0e04b" hs_bindgen_70f886b48fe0e04b :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:937: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_70f886b48fe0e04b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_f128e22507059d1e" hs_bindgen_f128e22507059d1e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:939: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_f128e22507059d1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_39bbd58a6298bc38" hs_bindgen_39bbd58a6298bc38 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:940: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_39bbd58a6298bc38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_46d7d56305dc4ff1" hs_bindgen_46d7d56305dc4ff1 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:941: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_46d7d56305dc4ff1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_45289966db9f3adf" hs_bindgen_45289966db9f3adf :: + 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:944: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_45289966db9f3adf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_fead08ee013696d6" hs_bindgen_fead08ee013696d6 :: + 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:947: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_fead08ee013696d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_d2c217524dc44416" hs_bindgen_d2c217524dc44416 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:954: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_d2c217524dc44416 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_e675a2313517629c" hs_bindgen_e675a2313517629c :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:961: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_e675a2313517629c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_e840a4c41526e427" hs_bindgen_e840a4c41526e427 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:966: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_e840a4c41526e427 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_f1bc4f7ed3365459" hs_bindgen_f1bc4f7ed3365459 :: + 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:970: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_f1bc4f7ed3365459 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_6bb111e5227f3184" hs_bindgen_6bb111e5227f3184 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:972: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_6bb111e5227f3184 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_631495f484b9fa69" hs_bindgen_631495f484b9fa69 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:973: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_631495f484b9fa69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_4da3a4880ba1d073" hs_bindgen_4da3a4880ba1d073 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:975: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_4da3a4880ba1d073 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_4ab859bd89a10c81" hs_bindgen_4ab859bd89a10c81 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:977: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_4ab859bd89a10c81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_a5bba30f012a5805" hs_bindgen_a5bba30f012a5805 :: + 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:980: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_a5bba30f012a5805 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_ef308a8335d2e43d" hs_bindgen_ef308a8335d2e43d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:985: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_ef308a8335d2e43d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_2f1aa9a79d9fe5d6" hs_bindgen_2f1aa9a79d9fe5d6 :: + 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:992: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_2f1aa9a79d9fe5d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_675f3ca8fed96e8e" hs_bindgen_675f3ca8fed96e8e :: + 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:999: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_675f3ca8fed96e8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_eef13319a52aaed4" hs_bindgen_eef13319a52aaed4 :: + 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:1004: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_eef13319a52aaed4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_f614ff79b0d29671" hs_bindgen_f614ff79b0d29671 :: + 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:1009: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_f614ff79b0d29671 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_092a785e8e223d59" hs_bindgen_092a785e8e223d59 :: + 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:1027: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_092a785e8e223d59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_0cff0a2d8037e2a9" hs_bindgen_0cff0a2d8037e2a9 :: + 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:1038: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_0cff0a2d8037e2a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_7e08d007ececc2ff" hs_bindgen_7e08d007ececc2ff :: + 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:1054: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_7e08d007ececc2ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_94b2a27c906d1a84" hs_bindgen_94b2a27c906d1a84 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1058: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_94b2a27c906d1a84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_6b49b083d507c35e" hs_bindgen_6b49b083d507c35e :: + 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:1061: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_6b49b083d507c35e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_ddf145984ce04bc1" hs_bindgen_ddf145984ce04bc1 :: + 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:1063: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_ddf145984ce04bc1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_e10fdbd453b7eace" hs_bindgen_e10fdbd453b7eace :: + 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:1065: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_e10fdbd453b7eace + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_7719eb0f14b142e2" hs_bindgen_7719eb0f14b142e2 :: + 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:1067: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_7719eb0f14b142e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_ce04f3228fc2ff76" hs_bindgen_ce04f3228fc2ff76 :: + 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:1069: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_ce04f3228fc2ff76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_d40fc03533d215af" hs_bindgen_d40fc03533d215af :: + 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:1089: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_d40fc03533d215af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_3b5eeb32400bb364" hs_bindgen_3b5eeb32400bb364 :: + 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:1111: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_3b5eeb32400bb364 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_c1433fb48f490b1d" hs_bindgen_c1433fb48f490b1d :: + 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_c1433fb48f490b1d + +{-| 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:1119: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_c1433fb48f490b1d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_148465f106e0206e" hs_bindgen_148465f106e0206e :: + 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:1124:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_148465f106e0206e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_f615e59b3a4944b0" hs_bindgen_f615e59b3a4944b0 :: + 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:1136: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_f615e59b3a4944b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_3ba407a5bc7904c6" hs_bindgen_3ba407a5bc7904c6 :: + 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:1141: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_3ba407a5bc7904c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_38a75511acdcd422" hs_bindgen_38a75511acdcd422 :: + 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:1146: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_38a75511acdcd422 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_bccbd2b9b24466dd" hs_bindgen_bccbd2b9b24466dd :: + 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:1148: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_bccbd2b9b24466dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_0f6db200951c6b9e" hs_bindgen_0f6db200951c6b9e :: + 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:1155: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_0f6db200951c6b9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_8fdb7fdad7a81c87" hs_bindgen_8fdb7fdad7a81c87 :: + 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:1170: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_8fdb7fdad7a81c87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_5ccd01458da22832" hs_bindgen_5ccd01458da22832 :: + 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:1185: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_5ccd01458da22832 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_b43aa00fff883f9b" hs_bindgen_b43aa00fff883f9b :: + 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:1202: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_b43aa00fff883f9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_efd4eed37eeecc1e" hs_bindgen_efd4eed37eeecc1e :: + 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:1217: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_efd4eed37eeecc1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_089130628a70b907" hs_bindgen_089130628a70b907 :: + 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:1233: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_089130628a70b907 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_601e6433f8decc93" hs_bindgen_601e6433f8decc93 :: + 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:1248: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_601e6433f8decc93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_05637cdf86bfbf5c" hs_bindgen_05637cdf86bfbf5c :: + 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_05637cdf86bfbf5c + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1259: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_05637cdf86bfbf5c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_f984f70684444273" hs_bindgen_f984f70684444273 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1261: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_f984f70684444273 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_baf3fac544a6f99f" hs_bindgen_baf3fac544a6f99f :: + 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:1263: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_baf3fac544a6f99f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_1cab1873e38c94ce" hs_bindgen_1cab1873e38c94ce :: + 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:1268: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_1cab1873e38c94ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_08c67b6fb9e61a72" hs_bindgen_08c67b6fb9e61a72 :: + 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:1273: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_08c67b6fb9e61a72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_a4303448d5d3fe58" hs_bindgen_a4303448d5d3fe58 :: + 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:1275: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_a4303448d5d3fe58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_46678e518277b64a" hs_bindgen_46678e518277b64a :: + 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:1280: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_46678e518277b64a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_48a39f0dacd8732a" hs_bindgen_48a39f0dacd8732a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1282: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_48a39f0dacd8732a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_9ad255e7841414d8" hs_bindgen_9ad255e7841414d8 :: + 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:1285: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_9ad255e7841414d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_bb91469f8e62c252" hs_bindgen_bb91469f8e62c252 :: + 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:1290:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_bb91469f8e62c252 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_2fe843f7bcee6f92" hs_bindgen_2fe843f7bcee6f92 :: + 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:1295: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_2fe843f7bcee6f92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_d2fdf5545b7cb19a" hs_bindgen_d2fdf5545b7cb19a :: + 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:1297: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_d2fdf5545b7cb19a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_ce51b4db97aa2eb9" hs_bindgen_ce51b4db97aa2eb9 :: + 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:1302: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_ce51b4db97aa2eb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_deacda233a1f8b40" hs_bindgen_deacda233a1f8b40 :: + 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_deacda233a1f8b40 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1304: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_deacda233a1f8b40 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_24e9b733da0594a9" hs_bindgen_24e9b733da0594a9 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1307: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_24e9b733da0594a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_8311be835d65b3fa" hs_bindgen_8311be835d65b3fa :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1309: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_8311be835d65b3fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_abd755cacda0425d" hs_bindgen_abd755cacda0425d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1311: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_abd755cacda0425d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_425ea613c9faa766" hs_bindgen_425ea613c9faa766 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1313: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_425ea613c9faa766 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_a5b5f920b86bcaa1" hs_bindgen_a5b5f920b86bcaa1 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1315: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_a5b5f920b86bcaa1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_3bbd0b93b4ae9470" hs_bindgen_3bbd0b93b4ae9470 :: + 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:1318: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_3bbd0b93b4ae9470 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_19c447fdb102ab2a" hs_bindgen_19c447fdb102ab2a :: + 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:1320: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_19c447fdb102ab2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_e80d515e03f7d2c3" hs_bindgen_e80d515e03f7d2c3 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1323: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_e80d515e03f7d2c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_0f2c65eb74cee791" hs_bindgen_0f2c65eb74cee791 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1325: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_0f2c65eb74cee791 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_1a7728f3fd2365ef" hs_bindgen_1a7728f3fd2365ef :: + 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:1331: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_1a7728f3fd2365ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_6dd93b939b7d6516" hs_bindgen_6dd93b939b7d6516 :: + 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:1334: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_6dd93b939b7d6516 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_fba9b0d16fa383bc" hs_bindgen_fba9b0d16fa383bc :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1337: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_fba9b0d16fa383bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_0917138ec831e789" hs_bindgen_0917138ec831e789 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1340: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_0917138ec831e789 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_0e196793cf3a6a5c" hs_bindgen_0e196793cf3a6a5c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1342: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_0e196793cf3a6a5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_d9fdf0f6e73acffd" hs_bindgen_d9fdf0f6e73acffd :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1344: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_d9fdf0f6e73acffd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_2169d6675929fd1e" hs_bindgen_2169d6675929fd1e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1346: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_2169d6675929fd1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_651928ec07cc18e6" hs_bindgen_651928ec07cc18e6 :: + 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:1361: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_651928ec07cc18e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_e1904b4c4279a758" hs_bindgen_e1904b4c4279a758 :: + 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:1375: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_e1904b4c4279a758 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_1fd8f4ee343124eb" hs_bindgen_1fd8f4ee343124eb :: + 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:1393: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_1fd8f4ee343124eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_0fd2597df75eaf59" hs_bindgen_0fd2597df75eaf59 :: + 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:1408: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_0fd2597df75eaf59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_e1fc30a4ac0c1c4b" hs_bindgen_e1fc30a4ac0c1c4b :: + 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_e1fc30a4ac0c1c4b + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1414: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_e1fc30a4ac0c1c4b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_121eafc3c892fc80" hs_bindgen_121eafc3c892fc80 :: + 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_121eafc3c892fc80 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1416: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_121eafc3c892fc80 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_c07563a4781394df" hs_bindgen_c07563a4781394df :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1418: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_c07563a4781394df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_c7ae21aecf8be373" hs_bindgen_c7ae21aecf8be373 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1420: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_c7ae21aecf8be373 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_69c9460ade9f12c9" hs_bindgen_69c9460ade9f12c9 :: + 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_69c9460ade9f12c9 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1426: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_69c9460ade9f12c9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_f45d075b323e1ca0" hs_bindgen_f45d075b323e1ca0 :: + 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_f45d075b323e1ca0 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1428: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_f45d075b323e1ca0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_18ec63be8e87fa46" hs_bindgen_18ec63be8e87fa46 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1430: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_18ec63be8e87fa46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_e19b4fb1287147ad" hs_bindgen_e19b4fb1287147ad :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1432: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_e19b4fb1287147ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_20101ab77ced24ee" hs_bindgen_20101ab77ced24ee :: + 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_20101ab77ced24ee + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1438: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_20101ab77ced24ee x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_d552f3bee6617394" hs_bindgen_d552f3bee6617394 :: + 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_d552f3bee6617394 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1440: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_d552f3bee6617394 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_de87e103ccb99c6e" hs_bindgen_de87e103ccb99c6e :: + 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:1443: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_de87e103ccb99c6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_607de0d08ca349cb" hs_bindgen_607de0d08ca349cb :: + 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:1446: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_607de0d08ca349cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_f1160a66565462ac" hs_bindgen_f1160a66565462ac :: + 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:1452: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_f1160a66565462ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_975689310409e423" hs_bindgen_975689310409e423 :: + 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:1455: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_975689310409e423 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_8b3026e6ae07f098" hs_bindgen_8b3026e6ae07f098 :: + 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:1461: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_8b3026e6ae07f098 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_4abc5442b5b1c1d2" hs_bindgen_4abc5442b5b1c1d2 :: + 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:1467: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_4abc5442b5b1c1d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_aea5b133ea05685c" hs_bindgen_aea5b133ea05685c :: + 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:1470: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_aea5b133ea05685c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_6e2e5584e01c0eef" hs_bindgen_6e2e5584e01c0eef :: + 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:1476: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_6e2e5584e01c0eef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_1c054dfb4be875e3" hs_bindgen_1c054dfb4be875e3 :: + 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:1480: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_1c054dfb4be875e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_ba1abb3361e660b3" hs_bindgen_ba1abb3361e660b3 :: + 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:1487: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_ba1abb3361e660b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_4bb55dbb20604e97" hs_bindgen_4bb55dbb20604e97 :: + 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:1490: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_4bb55dbb20604e97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_f057e7d37e42798b" hs_bindgen_f057e7d37e42798b :: + 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:1497: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_f057e7d37e42798b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_8690b28ea6b14e7f" hs_bindgen_8690b28ea6b14e7f :: + 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:1505: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_8690b28ea6b14e7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_f27202d31ea1aeb9" hs_bindgen_f27202d31ea1aeb9 :: + 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:1510: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_f27202d31ea1aeb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_3641ecedd37ce1d6" hs_bindgen_3641ecedd37ce1d6 :: + 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:1513: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_3641ecedd37ce1d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_49f15ba3b678981a" hs_bindgen_49f15ba3b678981a :: + 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_49f15ba3b678981a + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1516: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_49f15ba3b678981a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_3b65aa0c1a074001" hs_bindgen_3b65aa0c1a074001 :: + 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:1529: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_3b65aa0c1a074001 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_b9db130ecf328281" hs_bindgen_b9db130ecf328281 :: + 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:1534: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_b9db130ecf328281 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_e1ee76a8c8170cb4" hs_bindgen_e1ee76a8c8170cb4 :: + 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:1537: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_e1ee76a8c8170cb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_0b243627a4f2d0a3" hs_bindgen_0b243627a4f2d0a3 :: + 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_0b243627a4f2d0a3 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1540: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_0b243627a4f2d0a3 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_b9733db6ae90b2a1" hs_bindgen_b9733db6ae90b2a1 :: + 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:1552: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_b9733db6ae90b2a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_94798ceab8ee3ec9" hs_bindgen_94798ceab8ee3ec9 :: + 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:1557: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_94798ceab8ee3ec9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_f0eaf61214f41ac5" hs_bindgen_f0eaf61214f41ac5 :: + 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:1559: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_f0eaf61214f41ac5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_b00483b05012c132" hs_bindgen_b00483b05012c132 :: + 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_b00483b05012c132 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1561: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_b00483b05012c132 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_f728f4ec4fa2b51e" hs_bindgen_f728f4ec4fa2b51e :: + 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:1564: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_f728f4ec4fa2b51e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_8c4396931c789098" hs_bindgen_8c4396931c789098 :: + 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:1572: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_8c4396931c789098 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_be11a2b213c459f8" hs_bindgen_be11a2b213c459f8 :: + 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:1580: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_be11a2b213c459f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_78427614271ad778" hs_bindgen_78427614271ad778 :: + 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_78427614271ad778 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1582: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_78427614271ad778 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_085d3128389f5b35" hs_bindgen_085d3128389f5b35 :: + 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_085d3128389f5b35 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1583: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_085d3128389f5b35 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_c5076ad2ca6832f5" hs_bindgen_c5076ad2ca6832f5 :: + 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:1591: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_c5076ad2ca6832f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_d094aa20bce91b58" hs_bindgen_d094aa20bce91b58 :: + 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:1596: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_d094aa20bce91b58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_1b7ac829eccdd164" hs_bindgen_1b7ac829eccdd164 :: + 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:1598: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_1b7ac829eccdd164 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_fcc72acf35e5798e" hs_bindgen_fcc72acf35e5798e :: + 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:1601: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_fcc72acf35e5798e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_ac3623112245810f" hs_bindgen_ac3623112245810f :: + 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:1603: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_ac3623112245810f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_058c56ebf286526b" hs_bindgen_058c56ebf286526b :: + 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_058c56ebf286526b + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1606: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_058c56ebf286526b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_394a549efc27bcec" hs_bindgen_394a549efc27bcec :: + 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:1620: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_394a549efc27bcec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_034969d1a1038edc" hs_bindgen_034969d1a1038edc :: + 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:1625: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_034969d1a1038edc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_69f3f571cded46a9" hs_bindgen_69f3f571cded46a9 :: + 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:1628: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_69f3f571cded46a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_43a4294e023f73da" hs_bindgen_43a4294e023f73da :: + 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:1633: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_43a4294e023f73da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_99de160a83d3c198" hs_bindgen_99de160a83d3c198 :: + 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_99de160a83d3c198 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1637: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_99de160a83d3c198 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_f6ea422fae8cb635" hs_bindgen_f6ea422fae8cb635 :: + 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:1650: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_f6ea422fae8cb635 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_0da4b10693def7ef" hs_bindgen_0da4b10693def7ef :: + 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:1655: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_0da4b10693def7ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_c3ec8caa5d71602b" hs_bindgen_c3ec8caa5d71602b :: + 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:1658: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_c3ec8caa5d71602b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_942a7cf4d2a22103" hs_bindgen_942a7cf4d2a22103 :: + 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_942a7cf4d2a22103 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1663: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_942a7cf4d2a22103 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_7782d2456888b235" hs_bindgen_7782d2456888b235 :: + 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:1676: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_7782d2456888b235 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_a7c8b9615eaa99e2" hs_bindgen_a7c8b9615eaa99e2 :: + 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_a7c8b9615eaa99e2 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1683: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_a7c8b9615eaa99e2 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_0a956a4d921c1b3e" hs_bindgen_0a956a4d921c1b3e :: + 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_0a956a4d921c1b3e + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1698: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_0a956a4d921c1b3e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_76e901b81fed5769" hs_bindgen_76e901b81fed5769 :: + 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_76e901b81fed5769 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1713: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_76e901b81fed5769 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_6d04c157acf0d8f9" hs_bindgen_6d04c157acf0d8f9 :: + 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:1714: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_6d04c157acf0d8f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_53679652cca9a176" hs_bindgen_53679652cca9a176 :: + 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:1719: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_53679652cca9a176 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_11d18c05e157d9bd" hs_bindgen_11d18c05e157d9bd :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1721: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_11d18c05e157d9bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_3303fe27b4554b5d" hs_bindgen_3303fe27b4554b5d :: + 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:1724: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_3303fe27b4554b5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_1dcdd625d0e565c8" hs_bindgen_1dcdd625d0e565c8 :: + 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:1725: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_1dcdd625d0e565c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_215d56a9174f67dd" hs_bindgen_215d56a9174f67dd :: + 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:1727: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_215d56a9174f67dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_46d5e171b362f2e9" hs_bindgen_46d5e171b362f2e9 :: + 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:1728: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_46d5e171b362f2e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_ef7ee6dfb0b7262f" hs_bindgen_ef7ee6dfb0b7262f :: + 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:1731: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_ef7ee6dfb0b7262f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_b12604e331a2dd85" hs_bindgen_b12604e331a2dd85 :: + 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:1733: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_b12604e331a2dd85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_33279f8708639055" hs_bindgen_33279f8708639055 :: + 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:1734: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_33279f8708639055 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_3ab9fc1430b7f632" hs_bindgen_3ab9fc1430b7f632 :: + 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:1735: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_3ab9fc1430b7f632 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_9ba230f27fee57f3" hs_bindgen_9ba230f27fee57f3 :: + 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:1737: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_9ba230f27fee57f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_cf72d89d998b444a" hs_bindgen_cf72d89d998b444a :: + 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:1740: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_cf72d89d998b444a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_b7fb6df04928ae54" hs_bindgen_b7fb6df04928ae54 :: + 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:1742: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_b7fb6df04928ae54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_3e8e9d5d91d894c5" hs_bindgen_3e8e9d5d91d894c5 :: + 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:1745: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_3e8e9d5d91d894c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_83ad75661534a4d3" hs_bindgen_83ad75661534a4d3 :: + 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:1749: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_83ad75661534a4d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_57df98dc490fa418" hs_bindgen_57df98dc490fa418 :: + 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:1752: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_57df98dc490fa418 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_9d6d4c5835ff679b" hs_bindgen_9d6d4c5835ff679b :: + 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:1755: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_9d6d4c5835ff679b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_b6af3a73c7106a8d" hs_bindgen_b6af3a73c7106a8d :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1771: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_b6af3a73c7106a8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_7606257414eafc4e" hs_bindgen_7606257414eafc4e :: + 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:1777: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_7606257414eafc4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_8586abf374015a6e" hs_bindgen_8586abf374015a6e :: + 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:1788: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_8586abf374015a6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_3caf93fbaa79c7d4" hs_bindgen_3caf93fbaa79c7d4 :: + 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:1803: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_3caf93fbaa79c7d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_be1e00ee4bdbdf1c" hs_bindgen_be1e00ee4bdbdf1c :: + 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:1811: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_be1e00ee4bdbdf1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_c1074cd5085771f6" hs_bindgen_c1074cd5085771f6 :: + 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_c1074cd5085771f6 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1813: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_c1074cd5085771f6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_d520f72907df3ff9" hs_bindgen_d520f72907df3ff9 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1815: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_d520f72907df3ff9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_15f7f2cde2130c4a" hs_bindgen_15f7f2cde2130c4a :: + 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:1821: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_15f7f2cde2130c4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_73a71f8c2593bd7f" hs_bindgen_73a71f8c2593bd7f :: + 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:1828: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_73a71f8c2593bd7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_9786e8993b076393" hs_bindgen_9786e8993b076393 :: + 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_9786e8993b076393 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1846: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_9786e8993b076393 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_e2fda1830178bff1" hs_bindgen_e2fda1830178bff1 :: + 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_e2fda1830178bff1 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1855: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_e2fda1830178bff1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_dd26eba720749550" hs_bindgen_dd26eba720749550 :: + 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_dd26eba720749550 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1863: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_dd26eba720749550 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_e845eb4199cf4c1f" hs_bindgen_e845eb4199cf4c1f :: + 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_e845eb4199cf4c1f + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1873: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_e845eb4199cf4c1f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_fb571c272b5b32f7" hs_bindgen_fb571c272b5b32f7 :: + 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_fb571c272b5b32f7 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1892: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_fb571c272b5b32f7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_785507060442580c" hs_bindgen_785507060442580c :: + 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:1899:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_785507060442580c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_06ad7887185f4d80" hs_bindgen_06ad7887185f4d80 :: + 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:1905: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_06ad7887185f4d80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_01b7cc3358ac032a" hs_bindgen_01b7cc3358ac032a :: + 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:1911: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_01b7cc3358ac032a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_8488ee9185f4374e" hs_bindgen_8488ee9185f4374e :: + 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_8488ee9185f4374e + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1924: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_8488ee9185f4374e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_90f8a5d3f4adb829" hs_bindgen_90f8a5d3f4adb829 :: + 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:1932:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_90f8a5d3f4adb829 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_ba549aadf89d7fc3" hs_bindgen_ba549aadf89d7fc3 :: + 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:1941: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_ba549aadf89d7fc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_e68473ec543d213f" hs_bindgen_e68473ec543d213f :: + 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:1952: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_e68473ec543d213f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_7c5642e0541f2aa2" hs_bindgen_7c5642e0541f2aa2 :: + 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_7c5642e0541f2aa2 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1963: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_7c5642e0541f2aa2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_b4616074ca70881c" hs_bindgen_b4616074ca70881c :: + 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:1970:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_b4616074ca70881c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_db9b9c350e30ecdb" hs_bindgen_db9b9c350e30ecdb :: + 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_db9b9c350e30ecdb + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1973: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_db9b9c350e30ecdb x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_10534029be8b225c" hs_bindgen_10534029be8b225c :: + 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_10534029be8b225c + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1976: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_10534029be8b225c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_64dbbcab3c244ee6" hs_bindgen_64dbbcab3c244ee6 :: + 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:1988: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_64dbbcab3c244ee6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_def906a1417cb9fa" hs_bindgen_def906a1417cb9fa :: + 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:1996: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_def906a1417cb9fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_d402b013a1691681" hs_bindgen_d402b013a1691681 :: + 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_d402b013a1691681 + +{-| 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:2011: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_d402b013a1691681 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_4d93b67494ea66f2" hs_bindgen_4d93b67494ea66f2 :: + 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_4d93b67494ea66f2 + +{-| 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:2030: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_4d93b67494ea66f2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_b2bdb97accbaac5b" hs_bindgen_b2bdb97accbaac5b :: + 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_b2bdb97accbaac5b + +{-| 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:2046: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_b2bdb97accbaac5b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_e580e5c43444abe4" hs_bindgen_e580e5c43444abe4 :: + 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_e580e5c43444abe4 + +{-| 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:2073: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_e580e5c43444abe4 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_1_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_7194d3cbc636fc7b" hs_bindgen_7194d3cbc636fc7b :: + 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:2091: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_7194d3cbc636fc7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_7a28a974c3d1dbaf" hs_bindgen_7a28a974c3d1dbaf :: + 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:2112: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_7a28a974c3d1dbaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_d77d9437d245f387" hs_bindgen_d77d9437d245f387 :: + 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:2133: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_d77d9437d245f387 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1.hs new file mode 100644 index 00000000..ab377b8a --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_1_1 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:88: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 + +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:89: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:90: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:92: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:93: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:95: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:96: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:98: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:99: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:100: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:101: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:103: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:104: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:105: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:106: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:107: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:108: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:110: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:111: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:113: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:114: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:115: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:117: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:120: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' + +__defined at:__ @botan\/ffi.h:129:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:129: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:138:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:138: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:211:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:246:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:246: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:334:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:334: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:414:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:414: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:510:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:510: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:512: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:513: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:514: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:595: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:777:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:777: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:843:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:843: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1043:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1043: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:1056: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:1126: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:1127:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1257:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1257: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1502:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1502: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1526:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1526: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:1547:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1549:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1549: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1569:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1569: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1588:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1588: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1617: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:1617: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1647: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:1647: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1711:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1711: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1758: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 + +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:1759: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:1760: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:1761: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:1762: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:1763: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:1764: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:1765: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:1766: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:1767: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:1768: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1809:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1809: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1886:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1886: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1918:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1918: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:1958:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:1958: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:1960: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:1981: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:1981: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_1_1/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/FunPtr.hs new file mode 100644 index 00000000..3b846a68 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/FunPtr.hs @@ -0,0 +1,8295 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_1_1.FunPtr where + +import Botan.Bindings.Generated.Botan_3_1_1 +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_1_1_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_d0b91e0ce58cf4f4 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_4c945ea164e460ea (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_c16759cdf17b175b (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11ae17a43de6bf6e (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_9342ac29f9675a84 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_86032a994dba31f9 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_a41cef9999183c63 (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_8aa2bcc88da29885 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_1a071b42eace475f (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c470ed3f7cf1cf1 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f24c473a449e65b7 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33c56e9495004397 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df795abc4ab9b58b (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_187ac1123468ef42 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b39898c64359f27a (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_694343c49f2c1310 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5534949695b5476b (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9fcb7046145ba983 (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_1_1_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cba79a6421ddf7cb (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c331064449c253e0 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d265f11ca53b46b (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_91cbe2343844268e (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d780b4dc2b58a0ad (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a59ae7fc54e1e50 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c789e4311bfe7ad6 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4056e7a3253915f2 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4f58c7d257d1b8d6 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9b7159866553096 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6312980a1e210100 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bda26f459d8396d0 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29e564cfc923de8c (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f27bb6b157e7c6e (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e509a9e3d7c97a6f (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1c6bf26a8cf2d59 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03473eb5a9773b8b (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3a0c6e309577e28 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bfd4a0b666766acf (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_009f27aa727a0a2c (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d98f7bdba3b4787 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32831a3a1a4e00ff (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1f110285f834083 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e745e0ac190d4173 (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_1_1_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf31d4d35d2a3fad (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3f474ad21eb0171 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f717e442e413f8b5 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_371323719ebe1eab (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a0efec7292f222d (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf95705f7b8a4319 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3911179cf20957c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b290d753371358d (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f513055da937d872 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bcc408c29c27c32d (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_175302ee3bbc639d (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_1_1_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca137d907c805782 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3773e46d7d3dd4ab (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d3833c019fd67b01 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a6df2a7da4ebd03 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7fe59020fe9f931d (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_1_1_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f6635ed336dd05c (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_710b834e5e5494d1 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f37dc75bfa2e19da (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_1_1_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b2fb71c4a3894d7 (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_1_1_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a94d2921cb3c09c (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_1_1_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92f3ff884c93c4fc (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_1_1_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d143b1ba3c8f950 (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_1_1_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_542950c697e88b23 (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_1_1_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19f3a321b53513d3 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90ec99a2c748e7a3 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9570e775337da3a2 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b4b584974aae4a69 (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_1_1_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_718b6fb905207948 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_edced3a63c58665e (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_1_1_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84d314948dd97018 (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_1_1_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d883f9c16c996743 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00bd5639dfb7c0eb (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_1_1_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bfda35bb5a98c7c0 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf4a5ff9c7a88e15 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d51eba19156905ce (void)) (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b4fceec119ecd89c (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_1_1_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9b888a15be12251 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a93c7fac6c880ba5 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a087a35310c14e4 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6a00f3ce93b083c (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_125c51059f813eed (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1141fb562a33c148 (void)) (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efda2ecf9b5fbc82 (void)) (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47632569fb8b57e4 (void)) (" + , " botan_mp_t const arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2103cb384b16184e (void)) (" + , " botan_mp_t const arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_181fbe0a96e5a999 (void)) (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8bb80e2cb3ce771c (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2663bf9f64d47f38 (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04cad6ef5c2b954f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d75d04240db20dc (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c218bc70a49973b (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38fa8da8e0dcf05e (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f896eaa4edf16061 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ead2a6ab1e97d162 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_623be590688e2a1a (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_1_1_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ef60a3e9c6fdda0 (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_1_1_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec3ee617ab647665 (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_1_1_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad296c79c73f8683 (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_1_1_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2269cc7d4ebf72a (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_1_1_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19c66356db1020fa (void)) (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_848b188f8fece60e (void)) (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_492c9bbfbb5eb349 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d855c97f23ca695b (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_1_1_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2e4c0aff3ca4aae (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86db142aad3eb48d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_252e8fb7cc7d770a (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_1_1_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a809fd32c82d684 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c7635f2f228fbc7 (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_1_1_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ded1f9282a28ab6f (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_1_1_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2bcd741134a0606 (void)) (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_575d0908e672a60f (void)) (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b8f118068f48c8d (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31698ca25fd9b975 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_312e9fdcb4c6c02b (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_1_1_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_062254553726aeab (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fa594ef9d2708c5 (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_1_1_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71791305d1742a5f (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_67a9bb007a0dc277 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50e0a6d067695dee (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_088708d353c19b71 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8923d90c2c16f7aa (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_1_1_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b130a013571910db (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c785665dd1fcd040 (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_1_1_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d09f5ebe26de7768 (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_1_1_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_336c454bd88bceac (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_1_1_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c27f4c9646e5b0b2 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8202d915ed625aaf (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dda260da3de06e5b (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_1_1_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e5e0c8130b735ed0 (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_1_1_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_487cd4ec4de0b8b5 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a071d3aca8379e9a (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_1_1_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6ec4ea97e777504 (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_1_1_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d6272c19b6f69e1 (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_1_1_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68701f3acfef5913 (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_1_1_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13cea9ca1504d425 (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_1_1_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b703b2396d2050fb (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_1_1_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be2db8bb48d7c8db (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_1_1_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38ff0eee85573c0a (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c79ed76d3f225cbb (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2affe59c07b93a58 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2df650a572ac292 (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_1_1_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64420cc4a49d2d0a (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_1_1_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0566676c8caee967 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d01a2fbe3154e79 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2bbd9c3edf1d213b (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12d9d14f9d937e92 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3cff92bb256a30ea (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a9db53baf440ae9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30c93f2ac15110d1 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_887477d056943e35 (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_1_1_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c996020f2cedb6c6 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2baeec3e5f653721 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c787f5279dea947b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efbddd1a0ef4c1eb (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90cf91fa0004f045 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a90a66687593e363 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84f0e3f6a9f179db (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_1_1_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6cfd21c2ee54fde8 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_89c86831c5823ae7 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9586f410e8bc397 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_128feb78d351b36e (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_1_1_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22f71ab01a414693 (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_1_1_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc29b8d2029ae099 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0daebc697cac945 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81d94b838a54d21b (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_910185fae7514790 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5a627245596cfd6 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_751d2cf4521d0c2c (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_1_1_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06b1468fe5a3ca95 (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_1_1_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28580a7e5cf1e49b (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_1_1_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1625bac42b16db5b (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_1_1_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78097aba9dfbeb2a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d446219d74537680 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8ff95494796e98b (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8fc315f8451406d (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7cd0a3b08ad2f5bb (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e457b2ff63b7518 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_422bd9b00c0f933a (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a057818f5624a93 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0f9725a000fce250 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f753d5fb9279586 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95525c989cff37f9 (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_1_1_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c6a60d0ae2c3690 (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_1_1_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1bd1bbeb558d825b (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e45101b189d01d3 (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_1_1_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d79b37acd7ab86b (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_1_1_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_383e664d96122f16 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c80f8ccedb9bfcc6 (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_1_1_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c9060d94da5bf7a (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5208b963bb28e416 (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_1_1_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82d2aa0eb1ae0648 (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_1_1_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bc2e1b6ab8012a8 (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_1_1_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a6104e7b6b41f7a5 (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_1_1_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e521652aff41331 (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_1_1_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e2796b0ff8f04b9 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ecca5fb38027d6d (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_1_1_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05de391486042131 (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_1_1_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ebfc866b1937d0d2 (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_1_1_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b44dc3b554ea68cd (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_074595a8b896bdf2 (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_1_1_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1bd137dab4bf176 (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_1_1_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69119384502da22f (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_1_1_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36f741d6179b32b3 (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4397db597b39728e (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_305ec67d02700013 (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_1_1_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9976ca95cceca35 (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_1_1_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4887e12a4d76584f (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_1_1_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4c23167ca7c4b5e (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35f270fbb621ef5e (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_1_1_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75ac380165d810bd (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_1_1_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ecb5b98c6b4f3da2 (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_1_1_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f88e29a03359ba61 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92654b793af8881f (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_1_1_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf46082303c5321a (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_1_1_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_63d7ea1055f127c6 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_688b38f39601a529 (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_1_1_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50dcfe8b1f9d523c (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_1_1_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dfea46487f9c3e86 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d3fbd3cf349b0886 (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_1_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74bedaedb7cfb333 (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_1_1_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b71889956f791e42 (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_1_1_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ddf99efba6ea808 (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_1_1_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38eecd15d7176bcb (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0aebca95785503fa (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_1_1_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6c3092ab9a8d6e2 (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_1_1_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_62eb708e77758628 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe9b1b86bd6ea786 (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_1_1_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4f1b2a3c02c22d29 (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_1_1_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bac58534db399621 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bae1713b8cb721d (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e5f9f0b821ef1f01 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d674882b8fd51485 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68dcaff6df29ec1f (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5b1a5395a0cbd75 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c3dcd0183b6ce835 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6669418f806548b4 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f95082feb24917e (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_1_1_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9be458b5cdf3d0f (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_1_1_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bc4a1b99fa9aa97 (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_1_1_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_557c301abd9a2851 (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_1_1_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a08f1967e8129480 (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_1_1_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b7b4ad0a0a0fceb (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_1_1_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41e96df54e64d2ad (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9224a5727b6b77ec (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_1_1_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee2a81c46a914b89 (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_1_1_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8ba3e03212e6594 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_672acc4be3c5e841 (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_1_1_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51764bbd5ed87fc9 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37f6f663722afd20 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d05a8739b3c112c2 (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_1_1_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f13ad9735aee5db3 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df8ef02208273618 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbd2781f2ad1c1db (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_530b8f7112a492d8 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9b8ae75e1a2ff0a (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_67135faab7d5b15c (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_1_1_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6afdf90524ed5fb (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_1_1_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2465618b0d857412 (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_1_1_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d12bcd541e0e9d8 (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_1_1_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a4dc114181f2373 (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_1_1_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2d4286da404085a (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_1_1_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8361015e672e629e (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2ba9ef9d8240d67 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_178e3fff5d10093d (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_1_1_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b16398efc780a754 (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_1_1_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d87ceb616d153c88 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bbf9504d9d899d4 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e17a2857f1ad504 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c8cdf9aaf4b68ac (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_1_1_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_180c7b010c40697d (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a793747888f6168 (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_1_1_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5383dcd61a56e912 (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_1_1_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47ad6d7a383cf8d7 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bebbd26d18453fe8 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53bbfe15e699cc69 (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_1_1_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_831121aed2cb0e05 (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_1_1_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c908b3baf90b56f1 (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_1_1_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10e92e35386ae821 (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_1_1_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f09d74b80d81338c (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf71a79ebc3c39c6 (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_1_1_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42270ece9cac1a22 (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_1_1_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_d0b91e0ce58cf4f4" hs_bindgen_d0b91e0ce58cf4f4 :: + 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:144: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_d0b91e0ce58cf4f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_4c945ea164e460ea" hs_bindgen_4c945ea164e460ea :: + 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:153: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_4c945ea164e460ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_c16759cdf17b175b" hs_bindgen_c16759cdf17b175b :: + 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:160: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_c16759cdf17b175b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_11ae17a43de6bf6e" hs_bindgen_11ae17a43de6bf6e :: + 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:166: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_11ae17a43de6bf6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_9342ac29f9675a84" hs_bindgen_9342ac29f9675a84 :: + 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:171: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_9342ac29f9675a84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_86032a994dba31f9" hs_bindgen_86032a994dba31f9 :: + 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:176: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_86032a994dba31f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_a41cef9999183c63" hs_bindgen_a41cef9999183c63 :: + 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:181: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_a41cef9999183c63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_8aa2bcc88da29885" hs_bindgen_8aa2bcc88da29885 :: + 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:186: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_8aa2bcc88da29885 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_1a071b42eace475f" hs_bindgen_1a071b42eace475f :: + 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:192: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_1a071b42eace475f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_2c470ed3f7cf1cf1" hs_bindgen_2c470ed3f7cf1cf1 :: + 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:197: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_2c470ed3f7cf1cf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_f24c473a449e65b7" hs_bindgen_f24c473a449e65b7 :: + 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:203: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_f24c473a449e65b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_33c56e9495004397" hs_bindgen_33c56e9495004397 :: + 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:209: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_33c56e9495004397 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_df795abc4ab9b58b" hs_bindgen_df795abc4ab9b58b :: + 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:221: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_df795abc4ab9b58b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_187ac1123468ef42" hs_bindgen_187ac1123468ef42 :: + 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:231: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_187ac1123468ef42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_b39898c64359f27a" hs_bindgen_b39898c64359f27a :: + 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:236: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_b39898c64359f27a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_694343c49f2c1310" hs_bindgen_694343c49f2c1310 :: + 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:241: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_694343c49f2c1310 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_5534949695b5476b" hs_bindgen_5534949695b5476b :: + 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:258: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_5534949695b5476b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_9fcb7046145ba983" hs_bindgen_9fcb7046145ba983 :: + 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:270: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_9fcb7046145ba983 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_cba79a6421ddf7cb" hs_bindgen_cba79a6421ddf7cb :: + 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:284: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_cba79a6421ddf7cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_c331064449c253e0" hs_bindgen_c331064449c253e0 :: + 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:292: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_c331064449c253e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_4d265f11ca53b46b" hs_bindgen_4d265f11ca53b46b :: + 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:302: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_4d265f11ca53b46b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_91cbe2343844268e" hs_bindgen_91cbe2343844268e :: + 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:312: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_91cbe2343844268e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_d780b4dc2b58a0ad" hs_bindgen_d780b4dc2b58a0ad :: + 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:322: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_d780b4dc2b58a0ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_5a59ae7fc54e1e50" hs_bindgen_5a59ae7fc54e1e50 :: + 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:329: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_5a59ae7fc54e1e50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_c789e4311bfe7ad6" hs_bindgen_c789e4311bfe7ad6 :: + 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:343: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_c789e4311bfe7ad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_4056e7a3253915f2" hs_bindgen_4056e7a3253915f2 :: + 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:351: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_4056e7a3253915f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_4f58c7d257d1b8d6" hs_bindgen_4f58c7d257d1b8d6 :: + 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:359: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_4f58c7d257d1b8d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_a9b7159866553096" hs_bindgen_a9b7159866553096 :: + 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:367: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_a9b7159866553096 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_6312980a1e210100" hs_bindgen_6312980a1e210100 :: + 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:376: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_6312980a1e210100 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_bda26f459d8396d0" hs_bindgen_bda26f459d8396d0 :: + 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:386: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_bda26f459d8396d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_29e564cfc923de8c" hs_bindgen_29e564cfc923de8c :: + 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:394: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_29e564cfc923de8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_5f27bb6b157e7c6e" hs_bindgen_5f27bb6b157e7c6e :: + 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:401: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_5f27bb6b157e7c6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_e509a9e3d7c97a6f" hs_bindgen_e509a9e3d7c97a6f :: + 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:409: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_e509a9e3d7c97a6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_b1c6bf26a8cf2d59" hs_bindgen_b1c6bf26a8cf2d59 :: + 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:424: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_b1c6bf26a8cf2d59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_03473eb5a9773b8b" hs_bindgen_03473eb5a9773b8b :: + 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:432: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_03473eb5a9773b8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_f3a0c6e309577e28" hs_bindgen_f3a0c6e309577e28 :: + 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:441: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_f3a0c6e309577e28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_bfd4a0b666766acf" hs_bindgen_bfd4a0b666766acf :: + 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:450: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_bfd4a0b666766acf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_009f27aa727a0a2c" hs_bindgen_009f27aa727a0a2c :: + 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:459: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_009f27aa727a0a2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_6d98f7bdba3b4787" hs_bindgen_6d98f7bdba3b4787 :: + 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:469: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_6d98f7bdba3b4787 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_32831a3a1a4e00ff" hs_bindgen_32831a3a1a4e00ff :: + 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:477: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_32831a3a1a4e00ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_b1f110285f834083" hs_bindgen_b1f110285f834083 :: + 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:485: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_b1f110285f834083 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_e745e0ac190d4173" hs_bindgen_e745e0ac190d4173 :: + 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:495: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_e745e0ac190d4173 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_cf31d4d35d2a3fad" hs_bindgen_cf31d4d35d2a3fad :: + 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:505: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_cf31d4d35d2a3fad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_a3f474ad21eb0171" hs_bindgen_a3f474ad21eb0171 :: + 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:519: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_a3f474ad21eb0171 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_f717e442e413f8b5" hs_bindgen_f717e442e413f8b5 :: + 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:524: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_f717e442e413f8b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_371323719ebe1eab" hs_bindgen_371323719ebe1eab :: + 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:529: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_371323719ebe1eab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_3a0efec7292f222d" hs_bindgen_3a0efec7292f222d :: + 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:534: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_3a0efec7292f222d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_cf95705f7b8a4319" hs_bindgen_cf95705f7b8a4319 :: + 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:539: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_cf95705f7b8a4319 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_b3911179cf20957c" hs_bindgen_b3911179cf20957c :: + 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:544: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_b3911179cf20957c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_4b290d753371358d" hs_bindgen_4b290d753371358d :: + 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:550: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_4b290d753371358d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_f513055da937d872" hs_bindgen_f513055da937d872 :: + 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:556: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_f513055da937d872 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_bcc408c29c27c32d" hs_bindgen_bcc408c29c27c32d :: + 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:562: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_bcc408c29c27c32d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_175302ee3bbc639d" hs_bindgen_175302ee3bbc639d :: + 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:568: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_175302ee3bbc639d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_ca137d907c805782" hs_bindgen_ca137d907c805782 :: + 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:573: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_ca137d907c805782 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_3773e46d7d3dd4ab" hs_bindgen_3773e46d7d3dd4ab :: + 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:583: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_3773e46d7d3dd4ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_d3833c019fd67b01" hs_bindgen_d3833c019fd67b01 :: + 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:588: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_d3833c019fd67b01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_8a6df2a7da4ebd03" hs_bindgen_8a6df2a7da4ebd03 :: + 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:593: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_8a6df2a7da4ebd03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_7fe59020fe9f931d" hs_bindgen_7fe59020fe9f931d :: + 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:601: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_7fe59020fe9f931d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_7f6635ed336dd05c" hs_bindgen_7f6635ed336dd05c :: + 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:613: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_7f6635ed336dd05c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_710b834e5e5494d1" hs_bindgen_710b834e5e5494d1 :: + 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:619: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_710b834e5e5494d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_f37dc75bfa2e19da" hs_bindgen_f37dc75bfa2e19da :: + 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:638: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_f37dc75bfa2e19da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_7b2fb71c4a3894d7" hs_bindgen_7b2fb71c4a3894d7 :: + 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:671: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_7b2fb71c4a3894d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_8a94d2921cb3c09c" hs_bindgen_8a94d2921cb3c09c :: + 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:695: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_8a94d2921cb3c09c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_92f3ff884c93c4fc" hs_bindgen_92f3ff884c93c4fc :: + 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:722: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_92f3ff884c93c4fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_5d143b1ba3c8f950" hs_bindgen_5d143b1ba3c8f950 :: + 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:741: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_5d143b1ba3c8f950 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_542950c697e88b23" hs_bindgen_542950c697e88b23 :: + 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:764: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_542950c697e88b23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_19f3a321b53513d3" hs_bindgen_19f3a321b53513d3 :: + 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:782: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_19f3a321b53513d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_90ec99a2c748e7a3" hs_bindgen_90ec99a2c748e7a3 :: + 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:788: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_90ec99a2c748e7a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_9570e775337da3a2" hs_bindgen_9570e775337da3a2 :: + 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:794: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_9570e775337da3a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_b4b584974aae4a69" hs_bindgen_b4b584974aae4a69 :: + 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:799: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_b4b584974aae4a69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_718b6fb905207948" hs_bindgen_718b6fb905207948 :: + 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:805: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_718b6fb905207948 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_edced3a63c58665e" hs_bindgen_edced3a63c58665e :: + 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:811: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_edced3a63c58665e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_84d314948dd97018" hs_bindgen_84d314948dd97018 :: + 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:817: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_84d314948dd97018 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_d883f9c16c996743" hs_bindgen_d883f9c16c996743 :: + 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:825: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_d883f9c16c996743 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_00bd5639dfb7c0eb" hs_bindgen_00bd5639dfb7c0eb :: + 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:835: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_00bd5639dfb7c0eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_bfda35bb5a98c7c0" hs_bindgen_bfda35bb5a98c7c0 :: + 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:848: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_bfda35bb5a98c7c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_cf4a5ff9c7a88e15" hs_bindgen_cf4a5ff9c7a88e15 :: + 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:854: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_cf4a5ff9c7a88e15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_d51eba19156905ce" hs_bindgen_d51eba19156905ce :: + 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:859: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_d51eba19156905ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_b4fceec119ecd89c" hs_bindgen_b4fceec119ecd89c :: + 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:864: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_b4fceec119ecd89c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_f9b888a15be12251" hs_bindgen_f9b888a15be12251 :: + 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:869: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_f9b888a15be12251 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_a93c7fac6c880ba5" hs_bindgen_a93c7fac6c880ba5 :: + 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:874: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_a93c7fac6c880ba5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_4a087a35310c14e4" hs_bindgen_4a087a35310c14e4 :: + 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:879: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_4a087a35310c14e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_c6a00f3ce93b083c" hs_bindgen_c6a00f3ce93b083c :: + 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:884: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_c6a00f3ce93b083c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_125c51059f813eed" hs_bindgen_125c51059f813eed :: + 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:890: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_125c51059f813eed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_1141fb562a33c148" hs_bindgen_1141fb562a33c148 :: + 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:895: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_1141fb562a33c148 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_efda2ecf9b5fbc82" hs_bindgen_efda2ecf9b5fbc82 :: + 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:900: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_efda2ecf9b5fbc82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_47632569fb8b57e4" hs_bindgen_47632569fb8b57e4 :: + 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:905: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_47632569fb8b57e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_2103cb384b16184e" hs_bindgen_2103cb384b16184e :: + 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:910: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_2103cb384b16184e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_181fbe0a96e5a999" hs_bindgen_181fbe0a96e5a999 :: + 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:915: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_181fbe0a96e5a999 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_8bb80e2cb3ce771c" hs_bindgen_8bb80e2cb3ce771c :: + 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:922: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_8bb80e2cb3ce771c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_2663bf9f64d47f38" hs_bindgen_2663bf9f64d47f38 :: + 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:927: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_2663bf9f64d47f38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_04cad6ef5c2b954f" hs_bindgen_04cad6ef5c2b954f :: + 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:929: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_04cad6ef5c2b954f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_2d75d04240db20dc" hs_bindgen_2d75d04240db20dc :: + 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:931: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_2d75d04240db20dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_0c218bc70a49973b" hs_bindgen_0c218bc70a49973b :: + 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:933: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_0c218bc70a49973b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_38fa8da8e0dcf05e" hs_bindgen_38fa8da8e0dcf05e :: + 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:934: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_38fa8da8e0dcf05e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_f896eaa4edf16061" hs_bindgen_f896eaa4edf16061 :: + 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:936: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_f896eaa4edf16061 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_ead2a6ab1e97d162" hs_bindgen_ead2a6ab1e97d162 :: + 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:937: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_ead2a6ab1e97d162 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_623be590688e2a1a" hs_bindgen_623be590688e2a1a :: + 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:939: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_623be590688e2a1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_2ef60a3e9c6fdda0" hs_bindgen_2ef60a3e9c6fdda0 :: + 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:940: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_2ef60a3e9c6fdda0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_ec3ee617ab647665" hs_bindgen_ec3ee617ab647665 :: + 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:941: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_ec3ee617ab647665 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_ad296c79c73f8683" hs_bindgen_ad296c79c73f8683 :: + 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:944: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_ad296c79c73f8683 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_b2269cc7d4ebf72a" hs_bindgen_b2269cc7d4ebf72a :: + 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:947: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_b2269cc7d4ebf72a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_19c66356db1020fa" hs_bindgen_19c66356db1020fa :: + 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:954: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_19c66356db1020fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_848b188f8fece60e" hs_bindgen_848b188f8fece60e :: + 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:961: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_848b188f8fece60e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_492c9bbfbb5eb349" hs_bindgen_492c9bbfbb5eb349 :: + 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:966: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_492c9bbfbb5eb349 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_d855c97f23ca695b" hs_bindgen_d855c97f23ca695b :: + 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:970: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_d855c97f23ca695b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_d2e4c0aff3ca4aae" hs_bindgen_d2e4c0aff3ca4aae :: + 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:972: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_d2e4c0aff3ca4aae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_86db142aad3eb48d" hs_bindgen_86db142aad3eb48d :: + 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:973: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_86db142aad3eb48d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_252e8fb7cc7d770a" hs_bindgen_252e8fb7cc7d770a :: + 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:975: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_252e8fb7cc7d770a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_2a809fd32c82d684" hs_bindgen_2a809fd32c82d684 :: + 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:977: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_2a809fd32c82d684 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_3c7635f2f228fbc7" hs_bindgen_3c7635f2f228fbc7 :: + 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:980: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_3c7635f2f228fbc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_ded1f9282a28ab6f" hs_bindgen_ded1f9282a28ab6f :: + 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:985: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_ded1f9282a28ab6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_f2bcd741134a0606" hs_bindgen_f2bcd741134a0606 :: + 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:992: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_f2bcd741134a0606 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_575d0908e672a60f" hs_bindgen_575d0908e672a60f :: + 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:999: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_575d0908e672a60f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_0b8f118068f48c8d" hs_bindgen_0b8f118068f48c8d :: + 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:1004: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_0b8f118068f48c8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_31698ca25fd9b975" hs_bindgen_31698ca25fd9b975 :: + 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:1009: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_31698ca25fd9b975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_312e9fdcb4c6c02b" hs_bindgen_312e9fdcb4c6c02b :: + 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:1027: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_312e9fdcb4c6c02b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_062254553726aeab" hs_bindgen_062254553726aeab :: + 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:1038: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_062254553726aeab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_2fa594ef9d2708c5" hs_bindgen_2fa594ef9d2708c5 :: + 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:1054: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_2fa594ef9d2708c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_71791305d1742a5f" hs_bindgen_71791305d1742a5f :: + 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:1058: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_71791305d1742a5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_67a9bb007a0dc277" hs_bindgen_67a9bb007a0dc277 :: + 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:1061: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_67a9bb007a0dc277 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_50e0a6d067695dee" hs_bindgen_50e0a6d067695dee :: + 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:1063: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_50e0a6d067695dee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_088708d353c19b71" hs_bindgen_088708d353c19b71 :: + 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:1065: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_088708d353c19b71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_8923d90c2c16f7aa" hs_bindgen_8923d90c2c16f7aa :: + 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:1067: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_8923d90c2c16f7aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_b130a013571910db" hs_bindgen_b130a013571910db :: + 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:1069: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_b130a013571910db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_c785665dd1fcd040" hs_bindgen_c785665dd1fcd040 :: + 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:1089: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_c785665dd1fcd040 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_d09f5ebe26de7768" hs_bindgen_d09f5ebe26de7768 :: + 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:1111: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_d09f5ebe26de7768 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_336c454bd88bceac" hs_bindgen_336c454bd88bceac :: + 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:1119: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_336c454bd88bceac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_c27f4c9646e5b0b2" hs_bindgen_c27f4c9646e5b0b2 :: + 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:1124: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_c27f4c9646e5b0b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_8202d915ed625aaf" hs_bindgen_8202d915ed625aaf :: + 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:1136: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_8202d915ed625aaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_dda260da3de06e5b" hs_bindgen_dda260da3de06e5b :: + 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:1141: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_dda260da3de06e5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_e5e0c8130b735ed0" hs_bindgen_e5e0c8130b735ed0 :: + 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:1146: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_e5e0c8130b735ed0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_487cd4ec4de0b8b5" hs_bindgen_487cd4ec4de0b8b5 :: + 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:1148: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_487cd4ec4de0b8b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_a071d3aca8379e9a" hs_bindgen_a071d3aca8379e9a :: + 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:1155: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_a071d3aca8379e9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_d6ec4ea97e777504" hs_bindgen_d6ec4ea97e777504 :: + 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:1170: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_d6ec4ea97e777504 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_5d6272c19b6f69e1" hs_bindgen_5d6272c19b6f69e1 :: + 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:1185: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_5d6272c19b6f69e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_68701f3acfef5913" hs_bindgen_68701f3acfef5913 :: + 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:1202: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_68701f3acfef5913 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_13cea9ca1504d425" hs_bindgen_13cea9ca1504d425 :: + 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:1217: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_13cea9ca1504d425 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_b703b2396d2050fb" hs_bindgen_b703b2396d2050fb :: + 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:1233: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_b703b2396d2050fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_be2db8bb48d7c8db" hs_bindgen_be2db8bb48d7c8db :: + 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:1248: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_be2db8bb48d7c8db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_38ff0eee85573c0a" hs_bindgen_38ff0eee85573c0a :: + 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:1259: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_38ff0eee85573c0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_c79ed76d3f225cbb" hs_bindgen_c79ed76d3f225cbb :: + 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:1261: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_c79ed76d3f225cbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_2affe59c07b93a58" hs_bindgen_2affe59c07b93a58 :: + 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:1263: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_2affe59c07b93a58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_e2df650a572ac292" hs_bindgen_e2df650a572ac292 :: + 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:1268: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_e2df650a572ac292 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_64420cc4a49d2d0a" hs_bindgen_64420cc4a49d2d0a :: + 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:1273: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_64420cc4a49d2d0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_0566676c8caee967" hs_bindgen_0566676c8caee967 :: + 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:1275: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_0566676c8caee967 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_1d01a2fbe3154e79" hs_bindgen_1d01a2fbe3154e79 :: + 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:1280: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_1d01a2fbe3154e79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_2bbd9c3edf1d213b" hs_bindgen_2bbd9c3edf1d213b :: + 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:1282: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_2bbd9c3edf1d213b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_12d9d14f9d937e92" hs_bindgen_12d9d14f9d937e92 :: + 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:1285: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_12d9d14f9d937e92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_3cff92bb256a30ea" hs_bindgen_3cff92bb256a30ea :: + 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:1290: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_3cff92bb256a30ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_0a9db53baf440ae9" hs_bindgen_0a9db53baf440ae9 :: + 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:1295: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_0a9db53baf440ae9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_30c93f2ac15110d1" hs_bindgen_30c93f2ac15110d1 :: + 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:1297: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_30c93f2ac15110d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_887477d056943e35" hs_bindgen_887477d056943e35 :: + 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:1302: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_887477d056943e35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_c996020f2cedb6c6" hs_bindgen_c996020f2cedb6c6 :: + 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:1304: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_c996020f2cedb6c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_2baeec3e5f653721" hs_bindgen_2baeec3e5f653721 :: + 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:1307: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_2baeec3e5f653721 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_c787f5279dea947b" hs_bindgen_c787f5279dea947b :: + 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:1309: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_c787f5279dea947b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_efbddd1a0ef4c1eb" hs_bindgen_efbddd1a0ef4c1eb :: + 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:1311: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_efbddd1a0ef4c1eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_90cf91fa0004f045" hs_bindgen_90cf91fa0004f045 :: + 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:1313: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_90cf91fa0004f045 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_a90a66687593e363" hs_bindgen_a90a66687593e363 :: + 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:1315: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_a90a66687593e363 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_84f0e3f6a9f179db" hs_bindgen_84f0e3f6a9f179db :: + 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:1318: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_84f0e3f6a9f179db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_6cfd21c2ee54fde8" hs_bindgen_6cfd21c2ee54fde8 :: + 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:1320: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_6cfd21c2ee54fde8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_89c86831c5823ae7" hs_bindgen_89c86831c5823ae7 :: + 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:1323: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_89c86831c5823ae7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_f9586f410e8bc397" hs_bindgen_f9586f410e8bc397 :: + 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:1325: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_f9586f410e8bc397 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_128feb78d351b36e" hs_bindgen_128feb78d351b36e :: + 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:1331: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_128feb78d351b36e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_22f71ab01a414693" hs_bindgen_22f71ab01a414693 :: + 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:1334: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_22f71ab01a414693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_bc29b8d2029ae099" hs_bindgen_bc29b8d2029ae099 :: + 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:1337: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_bc29b8d2029ae099 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_c0daebc697cac945" hs_bindgen_c0daebc697cac945 :: + 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:1340: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_c0daebc697cac945 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_81d94b838a54d21b" hs_bindgen_81d94b838a54d21b :: + 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:1342: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_81d94b838a54d21b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_910185fae7514790" hs_bindgen_910185fae7514790 :: + 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:1344: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_910185fae7514790 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_a5a627245596cfd6" hs_bindgen_a5a627245596cfd6 :: + 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:1346: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_a5a627245596cfd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_751d2cf4521d0c2c" hs_bindgen_751d2cf4521d0c2c :: + 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:1361: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_751d2cf4521d0c2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_06b1468fe5a3ca95" hs_bindgen_06b1468fe5a3ca95 :: + 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:1375: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_06b1468fe5a3ca95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_28580a7e5cf1e49b" hs_bindgen_28580a7e5cf1e49b :: + 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:1393: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_28580a7e5cf1e49b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_1625bac42b16db5b" hs_bindgen_1625bac42b16db5b :: + 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:1408: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_1625bac42b16db5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_78097aba9dfbeb2a" hs_bindgen_78097aba9dfbeb2a :: + 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:1414: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_78097aba9dfbeb2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_d446219d74537680" hs_bindgen_d446219d74537680 :: + 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:1416: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_d446219d74537680 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_e8ff95494796e98b" hs_bindgen_e8ff95494796e98b :: + 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:1418: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_e8ff95494796e98b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_b8fc315f8451406d" hs_bindgen_b8fc315f8451406d :: + 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:1420: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_b8fc315f8451406d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_7cd0a3b08ad2f5bb" hs_bindgen_7cd0a3b08ad2f5bb :: + 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:1426: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_7cd0a3b08ad2f5bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_5e457b2ff63b7518" hs_bindgen_5e457b2ff63b7518 :: + 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:1428: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_5e457b2ff63b7518 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_422bd9b00c0f933a" hs_bindgen_422bd9b00c0f933a :: + 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:1430: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_422bd9b00c0f933a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_1a057818f5624a93" hs_bindgen_1a057818f5624a93 :: + 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:1432: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_1a057818f5624a93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_0f9725a000fce250" hs_bindgen_0f9725a000fce250 :: + 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:1438: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_0f9725a000fce250 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_2f753d5fb9279586" hs_bindgen_2f753d5fb9279586 :: + 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:1440: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_2f753d5fb9279586 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_95525c989cff37f9" hs_bindgen_95525c989cff37f9 :: + 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:1443: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_95525c989cff37f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_7c6a60d0ae2c3690" hs_bindgen_7c6a60d0ae2c3690 :: + 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:1446: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_7c6a60d0ae2c3690 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_1bd1bbeb558d825b" hs_bindgen_1bd1bbeb558d825b :: + 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:1452: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_1bd1bbeb558d825b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2e45101b189d01d3" hs_bindgen_2e45101b189d01d3 :: + 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:1455: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_2e45101b189d01d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_9d79b37acd7ab86b" hs_bindgen_9d79b37acd7ab86b :: + 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:1461: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_9d79b37acd7ab86b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_383e664d96122f16" hs_bindgen_383e664d96122f16 :: + 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:1467: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_383e664d96122f16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_c80f8ccedb9bfcc6" hs_bindgen_c80f8ccedb9bfcc6 :: + 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:1470: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_c80f8ccedb9bfcc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_0c9060d94da5bf7a" hs_bindgen_0c9060d94da5bf7a :: + 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:1476: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_0c9060d94da5bf7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_5208b963bb28e416" hs_bindgen_5208b963bb28e416 :: + 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:1480: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_5208b963bb28e416 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_82d2aa0eb1ae0648" hs_bindgen_82d2aa0eb1ae0648 :: + 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:1487: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_82d2aa0eb1ae0648 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_6bc2e1b6ab8012a8" hs_bindgen_6bc2e1b6ab8012a8 :: + 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:1490: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_6bc2e1b6ab8012a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_a6104e7b6b41f7a5" hs_bindgen_a6104e7b6b41f7a5 :: + 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:1497: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_a6104e7b6b41f7a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_7e521652aff41331" hs_bindgen_7e521652aff41331 :: + 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:1505: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_7e521652aff41331 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_5e2796b0ff8f04b9" hs_bindgen_5e2796b0ff8f04b9 :: + 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:1510: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_5e2796b0ff8f04b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_7ecca5fb38027d6d" hs_bindgen_7ecca5fb38027d6d :: + 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:1513: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_7ecca5fb38027d6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_05de391486042131" hs_bindgen_05de391486042131 :: + 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:1516: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_05de391486042131 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_ebfc866b1937d0d2" hs_bindgen_ebfc866b1937d0d2 :: + 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:1529: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_ebfc866b1937d0d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_b44dc3b554ea68cd" hs_bindgen_b44dc3b554ea68cd :: + 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:1534: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_b44dc3b554ea68cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_074595a8b896bdf2" hs_bindgen_074595a8b896bdf2 :: + 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:1537: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_074595a8b896bdf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_f1bd137dab4bf176" hs_bindgen_f1bd137dab4bf176 :: + 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:1540: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_f1bd137dab4bf176 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_69119384502da22f" hs_bindgen_69119384502da22f :: + 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:1552: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_69119384502da22f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_36f741d6179b32b3" hs_bindgen_36f741d6179b32b3 :: + 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:1557: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_36f741d6179b32b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_4397db597b39728e" hs_bindgen_4397db597b39728e :: + 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:1559: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_4397db597b39728e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_305ec67d02700013" hs_bindgen_305ec67d02700013 :: + 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:1561: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_305ec67d02700013 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_d9976ca95cceca35" hs_bindgen_d9976ca95cceca35 :: + 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:1564: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_d9976ca95cceca35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_4887e12a4d76584f" hs_bindgen_4887e12a4d76584f :: + 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:1572: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_4887e12a4d76584f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_e4c23167ca7c4b5e" hs_bindgen_e4c23167ca7c4b5e :: + 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:1580: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_e4c23167ca7c4b5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_35f270fbb621ef5e" hs_bindgen_35f270fbb621ef5e :: + 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:1582: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_35f270fbb621ef5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_75ac380165d810bd" hs_bindgen_75ac380165d810bd :: + 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:1583: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_75ac380165d810bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_ecb5b98c6b4f3da2" hs_bindgen_ecb5b98c6b4f3da2 :: + 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:1591: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_ecb5b98c6b4f3da2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_f88e29a03359ba61" hs_bindgen_f88e29a03359ba61 :: + 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:1596: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_f88e29a03359ba61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_92654b793af8881f" hs_bindgen_92654b793af8881f :: + 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:1598: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_92654b793af8881f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_cf46082303c5321a" hs_bindgen_cf46082303c5321a :: + 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:1601: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_cf46082303c5321a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_63d7ea1055f127c6" hs_bindgen_63d7ea1055f127c6 :: + 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:1603: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_63d7ea1055f127c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_688b38f39601a529" hs_bindgen_688b38f39601a529 :: + 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:1606: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_688b38f39601a529 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_50dcfe8b1f9d523c" hs_bindgen_50dcfe8b1f9d523c :: + 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:1620: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_50dcfe8b1f9d523c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_dfea46487f9c3e86" hs_bindgen_dfea46487f9c3e86 :: + 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:1625: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_dfea46487f9c3e86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_d3fbd3cf349b0886" hs_bindgen_d3fbd3cf349b0886 :: + 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:1628: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_d3fbd3cf349b0886 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_74bedaedb7cfb333" hs_bindgen_74bedaedb7cfb333 :: + 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:1633: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_74bedaedb7cfb333 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_b71889956f791e42" hs_bindgen_b71889956f791e42 :: + 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:1637: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_b71889956f791e42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_8ddf99efba6ea808" hs_bindgen_8ddf99efba6ea808 :: + 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:1650: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_8ddf99efba6ea808 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_38eecd15d7176bcb" hs_bindgen_38eecd15d7176bcb :: + 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:1655: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_38eecd15d7176bcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_0aebca95785503fa" hs_bindgen_0aebca95785503fa :: + 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:1658: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_0aebca95785503fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_e6c3092ab9a8d6e2" hs_bindgen_e6c3092ab9a8d6e2 :: + 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:1663: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_e6c3092ab9a8d6e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_62eb708e77758628" hs_bindgen_62eb708e77758628 :: + 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:1676: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_62eb708e77758628 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_fe9b1b86bd6ea786" hs_bindgen_fe9b1b86bd6ea786 :: + 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:1683: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_fe9b1b86bd6ea786 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_4f1b2a3c02c22d29" hs_bindgen_4f1b2a3c02c22d29 :: + 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:1698: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_4f1b2a3c02c22d29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_bac58534db399621" hs_bindgen_bac58534db399621 :: + 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:1713: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_bac58534db399621 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_3bae1713b8cb721d" hs_bindgen_3bae1713b8cb721d :: + 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:1714: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_3bae1713b8cb721d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_e5f9f0b821ef1f01" hs_bindgen_e5f9f0b821ef1f01 :: + 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:1719: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_e5f9f0b821ef1f01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_d674882b8fd51485" hs_bindgen_d674882b8fd51485 :: + 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:1721: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_d674882b8fd51485 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_68dcaff6df29ec1f" hs_bindgen_68dcaff6df29ec1f :: + 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:1724: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_68dcaff6df29ec1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_f5b1a5395a0cbd75" hs_bindgen_f5b1a5395a0cbd75 :: + 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:1725: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_f5b1a5395a0cbd75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_c3dcd0183b6ce835" hs_bindgen_c3dcd0183b6ce835 :: + 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:1727: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_c3dcd0183b6ce835 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_6669418f806548b4" hs_bindgen_6669418f806548b4 :: + 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:1728: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_6669418f806548b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_3f95082feb24917e" hs_bindgen_3f95082feb24917e :: + 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:1731: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_3f95082feb24917e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_b9be458b5cdf3d0f" hs_bindgen_b9be458b5cdf3d0f :: + 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:1733: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_b9be458b5cdf3d0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_3bc4a1b99fa9aa97" hs_bindgen_3bc4a1b99fa9aa97 :: + 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:1734: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_3bc4a1b99fa9aa97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_557c301abd9a2851" hs_bindgen_557c301abd9a2851 :: + 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:1735: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_557c301abd9a2851 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_a08f1967e8129480" hs_bindgen_a08f1967e8129480 :: + 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:1737: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_a08f1967e8129480 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_9b7b4ad0a0a0fceb" hs_bindgen_9b7b4ad0a0a0fceb :: + 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:1740: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_9b7b4ad0a0a0fceb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_41e96df54e64d2ad" hs_bindgen_41e96df54e64d2ad :: + 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:1742: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_41e96df54e64d2ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_9224a5727b6b77ec" hs_bindgen_9224a5727b6b77ec :: + 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:1745: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_9224a5727b6b77ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_ee2a81c46a914b89" hs_bindgen_ee2a81c46a914b89 :: + 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:1749: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_ee2a81c46a914b89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_a8ba3e03212e6594" hs_bindgen_a8ba3e03212e6594 :: + 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:1752: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_a8ba3e03212e6594 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_672acc4be3c5e841" hs_bindgen_672acc4be3c5e841 :: + 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:1755: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_672acc4be3c5e841 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_51764bbd5ed87fc9" hs_bindgen_51764bbd5ed87fc9 :: + 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:1771: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_51764bbd5ed87fc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_37f6f663722afd20" hs_bindgen_37f6f663722afd20 :: + 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:1777: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_37f6f663722afd20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_d05a8739b3c112c2" hs_bindgen_d05a8739b3c112c2 :: + 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:1788: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_d05a8739b3c112c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_f13ad9735aee5db3" hs_bindgen_f13ad9735aee5db3 :: + 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:1803: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_f13ad9735aee5db3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_df8ef02208273618" hs_bindgen_df8ef02208273618 :: + 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:1811: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_df8ef02208273618 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_fbd2781f2ad1c1db" hs_bindgen_fbd2781f2ad1c1db :: + 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:1813: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_fbd2781f2ad1c1db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_530b8f7112a492d8" hs_bindgen_530b8f7112a492d8 :: + 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:1815: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_530b8f7112a492d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_f9b8ae75e1a2ff0a" hs_bindgen_f9b8ae75e1a2ff0a :: + 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:1821: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_f9b8ae75e1a2ff0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_67135faab7d5b15c" hs_bindgen_67135faab7d5b15c :: + 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:1828: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_67135faab7d5b15c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_b6afdf90524ed5fb" hs_bindgen_b6afdf90524ed5fb :: + 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:1846: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_b6afdf90524ed5fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_2465618b0d857412" hs_bindgen_2465618b0d857412 :: + 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:1855: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_2465618b0d857412 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_4d12bcd541e0e9d8" hs_bindgen_4d12bcd541e0e9d8 :: + 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:1863: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_4d12bcd541e0e9d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_7a4dc114181f2373" hs_bindgen_7a4dc114181f2373 :: + 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:1873: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_7a4dc114181f2373 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_d2d4286da404085a" hs_bindgen_d2d4286da404085a :: + 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:1892: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_d2d4286da404085a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_8361015e672e629e" hs_bindgen_8361015e672e629e :: + 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:1899: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_8361015e672e629e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_d2ba9ef9d8240d67" hs_bindgen_d2ba9ef9d8240d67 :: + 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:1905: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_d2ba9ef9d8240d67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_178e3fff5d10093d" hs_bindgen_178e3fff5d10093d :: + 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:1911: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_178e3fff5d10093d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_b16398efc780a754" hs_bindgen_b16398efc780a754 :: + 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:1924: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_b16398efc780a754 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_d87ceb616d153c88" hs_bindgen_d87ceb616d153c88 :: + 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:1932: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_d87ceb616d153c88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_6bbf9504d9d899d4" hs_bindgen_6bbf9504d9d899d4 :: + 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:1941: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_6bbf9504d9d899d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_9e17a2857f1ad504" hs_bindgen_9e17a2857f1ad504 :: + 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:1952: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_9e17a2857f1ad504 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_5c8cdf9aaf4b68ac" hs_bindgen_5c8cdf9aaf4b68ac :: + 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:1963: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_5c8cdf9aaf4b68ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_180c7b010c40697d" hs_bindgen_180c7b010c40697d :: + 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:1970: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_180c7b010c40697d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_0a793747888f6168" hs_bindgen_0a793747888f6168 :: + 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:1973: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_0a793747888f6168 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_5383dcd61a56e912" hs_bindgen_5383dcd61a56e912 :: + 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:1976: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_5383dcd61a56e912 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_47ad6d7a383cf8d7" hs_bindgen_47ad6d7a383cf8d7 :: + 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:1988: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_47ad6d7a383cf8d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_bebbd26d18453fe8" hs_bindgen_bebbd26d18453fe8 :: + 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:1996: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_bebbd26d18453fe8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_53bbfe15e699cc69" hs_bindgen_53bbfe15e699cc69 :: + 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:2011: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_53bbfe15e699cc69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_831121aed2cb0e05" hs_bindgen_831121aed2cb0e05 :: + 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:2030: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_831121aed2cb0e05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_c908b3baf90b56f1" hs_bindgen_c908b3baf90b56f1 :: + 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:2046: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_c908b3baf90b56f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_10e92e35386ae821" hs_bindgen_10e92e35386ae821 :: + 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:2073: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_10e92e35386ae821 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_f09d74b80d81338c" hs_bindgen_f09d74b80d81338c :: + 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:2091: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_f09d74b80d81338c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_cf71a79ebc3c39c6" hs_bindgen_cf71a79ebc3c39c6 :: + 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:2112: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_cf71a79ebc3c39c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_42270ece9cac1a22" hs_bindgen_42270ece9cac1a22 :: + 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:2133: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_42270ece9cac1a22 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/Safe.hs new file mode 100644 index 00000000..aed805d9 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/Safe.hs @@ -0,0 +1,12243 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_1_1.Safe where + +import Botan.Bindings.Generated.Botan_3_1_1 +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_41210a8a9dcb9ef0 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_6830df6b690c2f6e (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_782b60ceae110e3b (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_604970cb0ab7dfd2 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_104517d5aaa971dc (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_7fd7716d9dbe729e (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_8339dc13a0815820 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_92ca090676c0d3d2 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_80f68db0d7ffdcd3 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_4d66d3bf4ad3fbcd (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a0375e83c19f9124 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c04142127e2de464 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8d8131a95776cfae (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_071430c962758317 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c4ecefb7132a0b3f (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a91697716c76516f (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f5754b36efa7e72f (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_436c501d909bac6f (" + , " 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_5cd69ed7bdb0ea43 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b3eed2bacd3addc7 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7dda8b6809b3778a (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78b8581243be5c5d (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_95484c60b7a1d18d (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e8aee5a4358a016 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4ae5f68ec411f83c (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_87edc6537e3c1ac9 (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bbb6bdcda67ab65f (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b4a12a74762eb66a (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_74cd62459b13a93c (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f04941dafae5d0e (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_63040a1bb989730b (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_1230ed44d73aa872 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9c20da6b43225888 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5851f57b0c4b9b9 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e7e5b48e786b6be (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6cca5d6f4b87ca31 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9bbd67bcfa42b09 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40d611722209cce9 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6cdb2d0a9a9a0451 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e25b7144a2407ad1 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_879489ed26d48748 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d65e8914f3adf150 (" + , " 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_a8027c35a4c543ce (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1c4289c744794b9b (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e6b96f501cf70fdb (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c6e1728ef81844c6 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4cd58fd4afee82bf (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f680efdfe4b287d9 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de5f1cc64c1bda01 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_08471eaa4272cada (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_46f8b583bb8d0fc9 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_877ac5d5aa48c62b (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1649385297c37532 (" + , " 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_2691a1a2fe85e759 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ceae0dbf39093e24 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_4feba0ee0e8e4269 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_75855f47c6314b1f (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4e3ae2ec53290e85 (" + , " 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_f4f41a6398e0fa8f (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_9184f3147fb2c476 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_edd126f4665a0c45 (" + , " 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_d1c08c334bdd0f2b (" + , " 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_e93017eee62a0c7e (" + , " 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_fc30eee7b29ce0a2 (" + , " 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_b33cb48ca5665e7c (" + , " 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_333af142b81f4a2d (" + , " 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_0c6797ab3c6bf124 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e3aa68f396ffdc05 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3eaabf800d6dfa6f (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_8af01a51f62d9f86 (" + , " 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_4f79697a7dfa13e1 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_d7d2af8fb700e9ee (" + , " 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_e6764e1ab6f4041f (" + , " 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_31e01d5cdb463217 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d4c517d58161d5f1 (" + , " 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_4e421480d5d4d9a8 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_d597b58d40f778ff (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b95c9dd2451d5f96 (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_41504cc698204407 (" + , " 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_b81846e9e54f4b68 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_9e6b545d826fb531 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b06e0d18216b6478 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4298784e093ad680 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_17be0d5a613ba408 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e288d38d1e34307 (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2caadfbd53656b4f (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8208c03ecc71bb83 (" + , " botan_mp_t const arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e78563d1bb0e0227 (" + , " botan_mp_t const arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5c8138a84fca56b (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b65e8a0644dbcb91 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_d8a0713169124155 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_d5c9542e6adbe213 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_222f1bd3e5334533 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_5f81448c13b7d189 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_36e767d0a9f6db52 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_879302b5aa39d8e2 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4ba445c58bfae5f9 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3fc8a013319da102 (" + , " 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_7fb70c2da422b1b2 (" + , " 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_9bbd54d6ed5e3bb6 (" + , " 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_ce91cdbdf8ff55f3 (" + , " 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_3d6847d1285e55dd (" + , " 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_6357ca12aedacbc0 (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5ab75d64a80c37bc (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d903d4da9cdd1e38 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0feaef21d0cc10ca (" + , " 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_591e587edb90b751 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e5f2df9f07d6dff (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9f0021a8803e1e15 (" + , " 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_e4dc2d32ea303867 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dbec223530c5b045 (" + , " 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_423f968b1b0f1a4b (" + , " 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_ce1f6490c5e521f4 (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2043abacef598ea6 (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bb8043da0ff9f865 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9354067474b01942 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_159d8e26caf06045 (" + , " 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_27f29e2301be8565 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8b21aba63271527d (" + , " 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_1ac76b80b31a989b (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b1cb4f6d55ba5480 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_14a592252ea70859 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fe5490e5eec2b6d2 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f6b3d2c359007eb5 (" + , " 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_e3116f12811155f7 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3d33c7985a79f47 (" + , " 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_0ed0c0860f248a7e (" + , " 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_e710745c2439e10a (" + , " 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_74d5aaa15069f01a (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_677da69b1383414d (" + , " 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_b8c633a6c5748803 (" + , " 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_4ccf5efe4ca33538 (" + , " 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_2c1d4cf165cf7179 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7a3ec7ecea28d006 (" + , " 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_c5a5d7bd71af714b (" + , " 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_9e7232583b1ada5c (" + , " 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_c4c0fbc8d0228773 (" + , " 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_b614762ca167690e (" + , " 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_e12a0123e318a3bb (" + , " 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_2f7805c2300494a0 (" + , " 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_51dcb84d99381a82 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ab280d966359d78b (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc5ae7a55d30be9d (" + , " 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_67c6fa4ad9b7ff6b (" + , " 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_0d9fc3807b374394 (" + , " 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_530dd6798a8a6a19 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_003f96cca27a11ff (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b9cba189bbf1b99a (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8991563c845a7138 (" + , " 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_afa02e12f718a628 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f4f39b1bda129434 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_350d9ef25d6f0d46 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e334c7e3e1b45dba (" + , " 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_93d9ec5124f0efd3 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6c93da7fc9908dd7 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50b082ad9881a046 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3cda46b146b84be3 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0f176b7e32bc3e63 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_302325cf1f94295c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9fd64a0ca04ebc46 (" + , " 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_a2fa61ae77c11507 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f11d2f11281cf76 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fb851129940030ae (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73e1088ccf46fa4d (" + , " 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_09b5fbba8c29d6c0 (" + , " 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_f444dbffaa4707c3 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0c668ec97f1fffd9 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34e0ce7c3b98921d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c56f1686f52c7179 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e51f60016e20a013 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f27c0278c7840e48 (" + , " 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_e4006b5814bba459 (" + , " 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_ea9a066336baf8e8 (" + , " 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_06fefedbff14edbf (" + , " 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_99362e7a09b73023 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_24c40b583ee6429f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9d0960f44fea90f0 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_637278914f62bde4 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_65ca3c4d96c711e8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9126cc730920763f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b8ca2a93b4f9a9ac (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_efc4d97542bf9a63 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b77f3841cb74490a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5cd173883c0c68d0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d99903f1d021d25 (" + , " 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_fbdfb3091123a4aa (" + , " 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_992f779ad1c354b9 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e2f9f8da9d12f72a (" + , " 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_eca808160d99b512 (" + , " 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_f50ef65f67c5d81c (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_98407eae09680298 (" + , " 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_2d72298cb488c722 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bfaed123a9fc6026 (" + , " 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_997bb9c180fe0055 (" + , " 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_f153909247430523 (" + , " 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_f72a8d128f19ae47 (" + , " 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_76d136276cc59ca7 (" + , " 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_af2b3465db9eb11a (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ac0ab5e12dd088ad (" + , " 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_1a77de3c65d34197 (" + , " 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_65ff69bf85ea9514 (" + , " 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_685fc5e8293ad957 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5c14a46cc0d5589c (" + , " 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_7ff19f3716b8cc23 (" + , " 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_a761f74e89572d56 (" + , " 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_b7aa24a1b017f058 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6fc07e37eba7fbb9 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50b151c5a4aa7425 (" + , " 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_10313288be0dd6bb (" + , " 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_695355eade63d0ab (" + , " 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_d86b2eef6161ecef (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a89b8c223241e4a0 (" + , " 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_4975bce441ebfacb (" + , " 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_271ce282b6f98db1 (" + , " 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_190d260d69069184 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ed6540a811efbc66 (" + , " 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_7cad4938cfd04796 (" + , " 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_71057a450d149886 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_30cdb16116184910 (" + , " 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_f5fb2b77ee8d607e (" + , " 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_20a844e50f0a0b15 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_11b14cedec74c145 (" + , " 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_59156c5a08feaf05 (" + , " 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_48198efec50c465e (" + , " 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_b29b8938e87af0d1 (" + , " 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_41d2c31391f7c6b6 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c36d16342966d21c (" + , " 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_514555d10694abd3 (" + , " 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_af32cd2868337e5d (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d800b6380087ef1 (" + , " 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_8e0c67ca48abff81 (" + , " 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_64d5d46403b3570e (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_888318c194813c26 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2fdca54f5f8bdcb3 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_69e06ef086d100b3 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1ed7ffd6326b08c4 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9be4a971d855f70f (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f935c20a506518b0 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3af9f9140c109453 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_19dd638271a473ca (" + , " 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_a4acb13bba23d8ad (" + , " 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_03d1ff497cb9a7a6 (" + , " 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_4e1b9a58aa086db2 (" + , " 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_6815b2902620d5d3 (" + , " 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_7f3fe2a4850926d8 (" + , " 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_ef2cbd129c62d31c (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d73bc4be944b9351 (" + , " 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_c9752bc138f0a492 (" + , " 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_8666aa9104709c96 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_79f141f09a9bfadb (" + , " 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_ab8b336f39e39275 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_efa7a524af3adc60 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbd1ed865be8dc07 (" + , " 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_635bb37d6a955fdc (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_43f4258a1fe22a37 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2c8450ab8ca707fd (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c8251b4f4ca03e4 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bb803589c4f0aefc (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f3e42c95102c1644 (" + , " 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_91bb8a4ca8468640 (" + , " 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_8a8c0bfceed3e957 (" + , " 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_d1b60fac3d12a7a2 (" + , " 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_241eda7317486db2 (" + , " 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_cd600aa3041e15d4 (" + , " 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_b7c22928c01bdc02 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9af34ba843b43530 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_43578d0480ca6b80 (" + , " 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_bdebac98f7b308b9 (" + , " 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_1afeabebff2736f1 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c329fa6d7d30ead2 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_735811989bc5559a (" + , " 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_af43282b42684dde (" + , " 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_e1f18bcf152c7023 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8e3e130b63fc6e6c (" + , " 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_45d19ac618952939 (" + , " 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_a344426be9101326 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_50e786f478878bfc (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b0ca2477456ad44f (" + , " 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_97db259931470015 (" + , " 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_77b1156a6bed7c47 (" + , " 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_03ae3987932750c8 (" + , " 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_bc50e4b5b8565f48 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa595d7d36e93a96 (" + , " 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_a13c4b8d6e6cc28c (" + , " 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_1_1_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_41210a8a9dcb9ef0" hs_bindgen_41210a8a9dcb9ef0 :: + 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:144: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_41210a8a9dcb9ef0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_6830df6b690c2f6e" hs_bindgen_6830df6b690c2f6e :: + 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:153: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_6830df6b690c2f6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_782b60ceae110e3b" hs_bindgen_782b60ceae110e3b :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_782b60ceae110e3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_604970cb0ab7dfd2" hs_bindgen_604970cb0ab7dfd2 :: + 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:166: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_604970cb0ab7dfd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_104517d5aaa971dc" hs_bindgen_104517d5aaa971dc :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_104517d5aaa971dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_7fd7716d9dbe729e" hs_bindgen_7fd7716d9dbe729e :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_7fd7716d9dbe729e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_8339dc13a0815820" hs_bindgen_8339dc13a0815820 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_8339dc13a0815820 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_92ca090676c0d3d2" hs_bindgen_92ca090676c0d3d2 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_92ca090676c0d3d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_80f68db0d7ffdcd3" hs_bindgen_80f68db0d7ffdcd3 :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_80f68db0d7ffdcd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_4d66d3bf4ad3fbcd" hs_bindgen_4d66d3bf4ad3fbcd :: + 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:197: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_4d66d3bf4ad3fbcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_a0375e83c19f9124" hs_bindgen_a0375e83c19f9124 :: + 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:203: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_a0375e83c19f9124 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_c04142127e2de464" hs_bindgen_c04142127e2de464 :: + 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:209: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_c04142127e2de464 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_8d8131a95776cfae" hs_bindgen_8d8131a95776cfae :: + 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:221: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_8d8131a95776cfae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_071430c962758317" hs_bindgen_071430c962758317 :: + 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:231: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_071430c962758317 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_c4ecefb7132a0b3f" hs_bindgen_c4ecefb7132a0b3f :: + 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:236:28@ + +__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_c4ecefb7132a0b3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_a91697716c76516f" hs_bindgen_a91697716c76516f :: + 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:241: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_a91697716c76516f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_f5754b36efa7e72f" hs_bindgen_f5754b36efa7e72f :: + 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:258: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 "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_f5754b36efa7e72f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_436c501d909bac6f" hs_bindgen_436c501d909bac6f :: + 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:270: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_436c501d909bac6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_5cd69ed7bdb0ea43" hs_bindgen_5cd69ed7bdb0ea43 :: + 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:284: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_5cd69ed7bdb0ea43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_b3eed2bacd3addc7" hs_bindgen_b3eed2bacd3addc7 :: + 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:292: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_b3eed2bacd3addc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_7dda8b6809b3778a" hs_bindgen_7dda8b6809b3778a :: + 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:302: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_7dda8b6809b3778a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_78b8581243be5c5d" hs_bindgen_78b8581243be5c5d :: + 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:312: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_78b8581243be5c5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_95484c60b7a1d18d" hs_bindgen_95484c60b7a1d18d :: + 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:322: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_95484c60b7a1d18d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_6e8aee5a4358a016" hs_bindgen_6e8aee5a4358a016 :: + 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:329: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_6e8aee5a4358a016 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_4ae5f68ec411f83c" hs_bindgen_4ae5f68ec411f83c :: + 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:343: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_4ae5f68ec411f83c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_87edc6537e3c1ac9" hs_bindgen_87edc6537e3c1ac9 :: + 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:351: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_87edc6537e3c1ac9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_bbb6bdcda67ab65f" hs_bindgen_bbb6bdcda67ab65f :: + 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:359: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_bbb6bdcda67ab65f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_b4a12a74762eb66a" hs_bindgen_b4a12a74762eb66a :: + 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:367: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_b4a12a74762eb66a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_74cd62459b13a93c" hs_bindgen_74cd62459b13a93c :: + 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:376: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_74cd62459b13a93c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_5f04941dafae5d0e" hs_bindgen_5f04941dafae5d0e :: + 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:386: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_5f04941dafae5d0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_63040a1bb989730b" hs_bindgen_63040a1bb989730b :: + 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:394: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_63040a1bb989730b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_1230ed44d73aa872" hs_bindgen_1230ed44d73aa872 :: + 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:401: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_1230ed44d73aa872 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_9c20da6b43225888" hs_bindgen_9c20da6b43225888 :: + 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:409: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_9c20da6b43225888 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_f5851f57b0c4b9b9" hs_bindgen_f5851f57b0c4b9b9 :: + 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:424: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_f5851f57b0c4b9b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_6e7e5b48e786b6be" hs_bindgen_6e7e5b48e786b6be :: + 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:432: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_6e7e5b48e786b6be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_6cca5d6f4b87ca31" hs_bindgen_6cca5d6f4b87ca31 :: + 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:441: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_6cca5d6f4b87ca31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_e9bbd67bcfa42b09" hs_bindgen_e9bbd67bcfa42b09 :: + 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:450: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_e9bbd67bcfa42b09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_40d611722209cce9" hs_bindgen_40d611722209cce9 :: + 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:459: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_40d611722209cce9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_6cdb2d0a9a9a0451" hs_bindgen_6cdb2d0a9a9a0451 :: + 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:469: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_6cdb2d0a9a9a0451 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_e25b7144a2407ad1" hs_bindgen_e25b7144a2407ad1 :: + 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:477: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_e25b7144a2407ad1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_879489ed26d48748" hs_bindgen_879489ed26d48748 :: + 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:485: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_879489ed26d48748 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_d65e8914f3adf150" hs_bindgen_d65e8914f3adf150 :: + 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:495: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_d65e8914f3adf150 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_a8027c35a4c543ce" hs_bindgen_a8027c35a4c543ce :: + 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:505: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_a8027c35a4c543ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_1c4289c744794b9b" hs_bindgen_1c4289c744794b9b :: + 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:519: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_1c4289c744794b9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_e6b96f501cf70fdb" hs_bindgen_e6b96f501cf70fdb :: + 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:524: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_e6b96f501cf70fdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_c6e1728ef81844c6" hs_bindgen_c6e1728ef81844c6 :: + 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:529: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_c6e1728ef81844c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_4cd58fd4afee82bf" hs_bindgen_4cd58fd4afee82bf :: + 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:534: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_4cd58fd4afee82bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_f680efdfe4b287d9" hs_bindgen_f680efdfe4b287d9 :: + 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:539: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_f680efdfe4b287d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_de5f1cc64c1bda01" hs_bindgen_de5f1cc64c1bda01 :: + 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:544: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_de5f1cc64c1bda01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_08471eaa4272cada" hs_bindgen_08471eaa4272cada :: + 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:550: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_08471eaa4272cada + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_46f8b583bb8d0fc9" hs_bindgen_46f8b583bb8d0fc9 :: + 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:556: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_46f8b583bb8d0fc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_877ac5d5aa48c62b" hs_bindgen_877ac5d5aa48c62b :: + 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:562:5@ + +__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_877ac5d5aa48c62b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_1649385297c37532" hs_bindgen_1649385297c37532 :: + 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:568:5@ + +__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_1649385297c37532 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_2691a1a2fe85e759" hs_bindgen_2691a1a2fe85e759 :: + 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:573: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_2691a1a2fe85e759 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_ceae0dbf39093e24" hs_bindgen_ceae0dbf39093e24 :: + 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:583:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_ceae0dbf39093e24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_4feba0ee0e8e4269" hs_bindgen_4feba0ee0e8e4269 :: + 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:588: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_4feba0ee0e8e4269 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_75855f47c6314b1f" hs_bindgen_75855f47c6314b1f :: + 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:593: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_75855f47c6314b1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_4e3ae2ec53290e85" hs_bindgen_4e3ae2ec53290e85 :: + 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_4e3ae2ec53290e85 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:601: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_4e3ae2ec53290e85 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_f4f41a6398e0fa8f" hs_bindgen_f4f41a6398e0fa8f :: + 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:613:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_f4f41a6398e0fa8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_9184f3147fb2c476" hs_bindgen_9184f3147fb2c476 :: + 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:619:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_9184f3147fb2c476 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_edd126f4665a0c45" hs_bindgen_edd126f4665a0c45 :: + 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_edd126f4665a0c45 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:638: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_edd126f4665a0c45 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_d1c08c334bdd0f2b" hs_bindgen_d1c08c334bdd0f2b :: + 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_d1c08c334bdd0f2b + +{-| 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:671: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_d1c08c334bdd0f2b x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_e93017eee62a0c7e" hs_bindgen_e93017eee62a0c7e :: + 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_e93017eee62a0c7e + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:695: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_e93017eee62a0c7e x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_fc30eee7b29ce0a2" hs_bindgen_fc30eee7b29ce0a2 :: + 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_fc30eee7b29ce0a2 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:722: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_fc30eee7b29ce0a2 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_b33cb48ca5665e7c" hs_bindgen_b33cb48ca5665e7c :: + 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_b33cb48ca5665e7c + +{-| 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:741: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_b33cb48ca5665e7c x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_333af142b81f4a2d" hs_bindgen_333af142b81f4a2d :: + 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_333af142b81f4a2d + +{-| 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:764: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_333af142b81f4a2d 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_1_1_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_0c6797ab3c6bf124" hs_bindgen_0c6797ab3c6bf124 :: + 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:782: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_0c6797ab3c6bf124 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_e3aa68f396ffdc05" hs_bindgen_e3aa68f396ffdc05 :: + 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:788: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_e3aa68f396ffdc05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_3eaabf800d6dfa6f" hs_bindgen_3eaabf800d6dfa6f :: + 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:794: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_3eaabf800d6dfa6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_8af01a51f62d9f86" hs_bindgen_8af01a51f62d9f86 :: + 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_8af01a51f62d9f86 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:799: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_8af01a51f62d9f86 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_4f79697a7dfa13e1" hs_bindgen_4f79697a7dfa13e1 :: + 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:805: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_4f79697a7dfa13e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_d7d2af8fb700e9ee" hs_bindgen_d7d2af8fb700e9ee :: + 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_d7d2af8fb700e9ee + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:811: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_d7d2af8fb700e9ee x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_e6764e1ab6f4041f" hs_bindgen_e6764e1ab6f4041f :: + 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_e6764e1ab6f4041f + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:817: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_e6764e1ab6f4041f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_31e01d5cdb463217" hs_bindgen_31e01d5cdb463217 :: + 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:825: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_31e01d5cdb463217 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_d4c517d58161d5f1" hs_bindgen_d4c517d58161d5f1 :: + 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:835: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_d4c517d58161d5f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_4e421480d5d4d9a8" hs_bindgen_4e421480d5d4d9a8 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:848: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_4e421480d5d4d9a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_d597b58d40f778ff" hs_bindgen_d597b58d40f778ff :: + 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:854:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_d597b58d40f778ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_b95c9dd2451d5f96" hs_bindgen_b95c9dd2451d5f96 :: + 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:859: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_b95c9dd2451d5f96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_41504cc698204407" hs_bindgen_41504cc698204407 :: + 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:864:28@ + +__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_41504cc698204407 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_b81846e9e54f4b68" hs_bindgen_b81846e9e54f4b68 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:869:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_b81846e9e54f4b68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_9e6b545d826fb531" hs_bindgen_9e6b545d826fb531 :: + 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:874: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_9e6b545d826fb531 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_b06e0d18216b6478" hs_bindgen_b06e0d18216b6478 :: + 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:879: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_b06e0d18216b6478 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_4298784e093ad680" hs_bindgen_4298784e093ad680 :: + 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:884: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_4298784e093ad680 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_17be0d5a613ba408" hs_bindgen_17be0d5a613ba408 :: + 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:890: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_17be0d5a613ba408 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_7e288d38d1e34307" hs_bindgen_7e288d38d1e34307 :: + 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:895: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_7e288d38d1e34307 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_2caadfbd53656b4f" hs_bindgen_2caadfbd53656b4f :: + 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:900: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_2caadfbd53656b4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_8208c03ecc71bb83" hs_bindgen_8208c03ecc71bb83 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:905: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_8208c03ecc71bb83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_e78563d1bb0e0227" hs_bindgen_e78563d1bb0e0227 :: + 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_e78563d1bb0e0227 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:910: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_e78563d1bb0e0227 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_f5c8138a84fca56b" hs_bindgen_f5c8138a84fca56b :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:915: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_f5c8138a84fca56b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_b65e8a0644dbcb91" hs_bindgen_b65e8a0644dbcb91 :: + 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:922: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_b65e8a0644dbcb91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_d8a0713169124155" hs_bindgen_d8a0713169124155 :: + 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:927: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_d8a0713169124155 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_d5c9542e6adbe213" hs_bindgen_d5c9542e6adbe213 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:929: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_d5c9542e6adbe213 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_222f1bd3e5334533" hs_bindgen_222f1bd3e5334533 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:931: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_222f1bd3e5334533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_5f81448c13b7d189" hs_bindgen_5f81448c13b7d189 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:933: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_5f81448c13b7d189 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_36e767d0a9f6db52" hs_bindgen_36e767d0a9f6db52 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:934: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_36e767d0a9f6db52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_879302b5aa39d8e2" hs_bindgen_879302b5aa39d8e2 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:936: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_879302b5aa39d8e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_4ba445c58bfae5f9" hs_bindgen_4ba445c58bfae5f9 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:937: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_4ba445c58bfae5f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_3fc8a013319da102" hs_bindgen_3fc8a013319da102 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:939: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_3fc8a013319da102 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_7fb70c2da422b1b2" hs_bindgen_7fb70c2da422b1b2 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:940: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_7fb70c2da422b1b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_9bbd54d6ed5e3bb6" hs_bindgen_9bbd54d6ed5e3bb6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:941: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_9bbd54d6ed5e3bb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_ce91cdbdf8ff55f3" hs_bindgen_ce91cdbdf8ff55f3 :: + 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:944: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_ce91cdbdf8ff55f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_3d6847d1285e55dd" hs_bindgen_3d6847d1285e55dd :: + 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:947: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_3d6847d1285e55dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_6357ca12aedacbc0" hs_bindgen_6357ca12aedacbc0 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:954: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_6357ca12aedacbc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_5ab75d64a80c37bc" hs_bindgen_5ab75d64a80c37bc :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:961: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_5ab75d64a80c37bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_d903d4da9cdd1e38" hs_bindgen_d903d4da9cdd1e38 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:966: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_d903d4da9cdd1e38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_0feaef21d0cc10ca" hs_bindgen_0feaef21d0cc10ca :: + 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:970: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_0feaef21d0cc10ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_591e587edb90b751" hs_bindgen_591e587edb90b751 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:972: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_591e587edb90b751 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_6e5f2df9f07d6dff" hs_bindgen_6e5f2df9f07d6dff :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:973: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_6e5f2df9f07d6dff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_9f0021a8803e1e15" hs_bindgen_9f0021a8803e1e15 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:975: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_9f0021a8803e1e15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_e4dc2d32ea303867" hs_bindgen_e4dc2d32ea303867 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:977: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_e4dc2d32ea303867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_dbec223530c5b045" hs_bindgen_dbec223530c5b045 :: + 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:980: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_dbec223530c5b045 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_423f968b1b0f1a4b" hs_bindgen_423f968b1b0f1a4b :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:985: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_423f968b1b0f1a4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_ce1f6490c5e521f4" hs_bindgen_ce1f6490c5e521f4 :: + 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:992: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_ce1f6490c5e521f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_2043abacef598ea6" hs_bindgen_2043abacef598ea6 :: + 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:999: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_2043abacef598ea6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_bb8043da0ff9f865" hs_bindgen_bb8043da0ff9f865 :: + 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:1004: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_bb8043da0ff9f865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_9354067474b01942" hs_bindgen_9354067474b01942 :: + 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:1009: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_9354067474b01942 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_159d8e26caf06045" hs_bindgen_159d8e26caf06045 :: + 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:1027: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_159d8e26caf06045 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_27f29e2301be8565" hs_bindgen_27f29e2301be8565 :: + 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:1038: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_27f29e2301be8565 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_8b21aba63271527d" hs_bindgen_8b21aba63271527d :: + 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:1054: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_8b21aba63271527d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_1ac76b80b31a989b" hs_bindgen_1ac76b80b31a989b :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1058: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_1ac76b80b31a989b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_b1cb4f6d55ba5480" hs_bindgen_b1cb4f6d55ba5480 :: + 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:1061: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_b1cb4f6d55ba5480 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_14a592252ea70859" hs_bindgen_14a592252ea70859 :: + 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:1063: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_14a592252ea70859 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_fe5490e5eec2b6d2" hs_bindgen_fe5490e5eec2b6d2 :: + 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:1065: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_fe5490e5eec2b6d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_f6b3d2c359007eb5" hs_bindgen_f6b3d2c359007eb5 :: + 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:1067: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_f6b3d2c359007eb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_e3116f12811155f7" hs_bindgen_e3116f12811155f7 :: + 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:1069: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_e3116f12811155f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_d3d33c7985a79f47" hs_bindgen_d3d33c7985a79f47 :: + 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:1089: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_d3d33c7985a79f47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_0ed0c0860f248a7e" hs_bindgen_0ed0c0860f248a7e :: + 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:1111: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_0ed0c0860f248a7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_e710745c2439e10a" hs_bindgen_e710745c2439e10a :: + 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_e710745c2439e10a + +{-| 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:1119: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_e710745c2439e10a x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_74d5aaa15069f01a" hs_bindgen_74d5aaa15069f01a :: + 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:1124:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_74d5aaa15069f01a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_677da69b1383414d" hs_bindgen_677da69b1383414d :: + 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:1136: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_677da69b1383414d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_b8c633a6c5748803" hs_bindgen_b8c633a6c5748803 :: + 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:1141: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_b8c633a6c5748803 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_4ccf5efe4ca33538" hs_bindgen_4ccf5efe4ca33538 :: + 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:1146: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_4ccf5efe4ca33538 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_2c1d4cf165cf7179" hs_bindgen_2c1d4cf165cf7179 :: + 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:1148: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_2c1d4cf165cf7179 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_7a3ec7ecea28d006" hs_bindgen_7a3ec7ecea28d006 :: + 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:1155: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_7a3ec7ecea28d006 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_c5a5d7bd71af714b" hs_bindgen_c5a5d7bd71af714b :: + 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:1170: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_c5a5d7bd71af714b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_9e7232583b1ada5c" hs_bindgen_9e7232583b1ada5c :: + 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:1185: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_9e7232583b1ada5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_c4c0fbc8d0228773" hs_bindgen_c4c0fbc8d0228773 :: + 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:1202: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_c4c0fbc8d0228773 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_b614762ca167690e" hs_bindgen_b614762ca167690e :: + 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:1217: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_b614762ca167690e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_e12a0123e318a3bb" hs_bindgen_e12a0123e318a3bb :: + 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:1233: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_e12a0123e318a3bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_2f7805c2300494a0" hs_bindgen_2f7805c2300494a0 :: + 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:1248: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_2f7805c2300494a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_51dcb84d99381a82" hs_bindgen_51dcb84d99381a82 :: + 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_51dcb84d99381a82 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1259: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_51dcb84d99381a82 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_ab280d966359d78b" hs_bindgen_ab280d966359d78b :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1261: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_ab280d966359d78b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_fc5ae7a55d30be9d" hs_bindgen_fc5ae7a55d30be9d :: + 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:1263: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_fc5ae7a55d30be9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_67c6fa4ad9b7ff6b" hs_bindgen_67c6fa4ad9b7ff6b :: + 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:1268: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_67c6fa4ad9b7ff6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_0d9fc3807b374394" hs_bindgen_0d9fc3807b374394 :: + 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:1273: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_0d9fc3807b374394 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_530dd6798a8a6a19" hs_bindgen_530dd6798a8a6a19 :: + 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:1275: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_530dd6798a8a6a19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_003f96cca27a11ff" hs_bindgen_003f96cca27a11ff :: + 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:1280: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_003f96cca27a11ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_b9cba189bbf1b99a" hs_bindgen_b9cba189bbf1b99a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1282: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_b9cba189bbf1b99a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_8991563c845a7138" hs_bindgen_8991563c845a7138 :: + 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:1285: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_8991563c845a7138 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_afa02e12f718a628" hs_bindgen_afa02e12f718a628 :: + 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:1290:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_afa02e12f718a628 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_f4f39b1bda129434" hs_bindgen_f4f39b1bda129434 :: + 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:1295: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_f4f39b1bda129434 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_350d9ef25d6f0d46" hs_bindgen_350d9ef25d6f0d46 :: + 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:1297: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_350d9ef25d6f0d46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_e334c7e3e1b45dba" hs_bindgen_e334c7e3e1b45dba :: + 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:1302: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_e334c7e3e1b45dba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_93d9ec5124f0efd3" hs_bindgen_93d9ec5124f0efd3 :: + 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_93d9ec5124f0efd3 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1304: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_93d9ec5124f0efd3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_6c93da7fc9908dd7" hs_bindgen_6c93da7fc9908dd7 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1307: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_6c93da7fc9908dd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_50b082ad9881a046" hs_bindgen_50b082ad9881a046 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1309: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_50b082ad9881a046 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_3cda46b146b84be3" hs_bindgen_3cda46b146b84be3 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1311: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_3cda46b146b84be3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_0f176b7e32bc3e63" hs_bindgen_0f176b7e32bc3e63 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1313: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_0f176b7e32bc3e63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_302325cf1f94295c" hs_bindgen_302325cf1f94295c :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1315: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_302325cf1f94295c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_9fd64a0ca04ebc46" hs_bindgen_9fd64a0ca04ebc46 :: + 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:1318: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_9fd64a0ca04ebc46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_a2fa61ae77c11507" hs_bindgen_a2fa61ae77c11507 :: + 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:1320: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_a2fa61ae77c11507 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_7f11d2f11281cf76" hs_bindgen_7f11d2f11281cf76 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1323: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_7f11d2f11281cf76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_fb851129940030ae" hs_bindgen_fb851129940030ae :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1325: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_fb851129940030ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_73e1088ccf46fa4d" hs_bindgen_73e1088ccf46fa4d :: + 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:1331: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_73e1088ccf46fa4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_09b5fbba8c29d6c0" hs_bindgen_09b5fbba8c29d6c0 :: + 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:1334: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_09b5fbba8c29d6c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_f444dbffaa4707c3" hs_bindgen_f444dbffaa4707c3 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1337: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_f444dbffaa4707c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_0c668ec97f1fffd9" hs_bindgen_0c668ec97f1fffd9 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1340: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_0c668ec97f1fffd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_34e0ce7c3b98921d" hs_bindgen_34e0ce7c3b98921d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1342: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_34e0ce7c3b98921d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_c56f1686f52c7179" hs_bindgen_c56f1686f52c7179 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1344: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_c56f1686f52c7179 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_e51f60016e20a013" hs_bindgen_e51f60016e20a013 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1346: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_e51f60016e20a013 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_f27c0278c7840e48" hs_bindgen_f27c0278c7840e48 :: + 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:1361: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_f27c0278c7840e48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_e4006b5814bba459" hs_bindgen_e4006b5814bba459 :: + 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:1375: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_e4006b5814bba459 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_ea9a066336baf8e8" hs_bindgen_ea9a066336baf8e8 :: + 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:1393: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_ea9a066336baf8e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_06fefedbff14edbf" hs_bindgen_06fefedbff14edbf :: + 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:1408: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_06fefedbff14edbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_99362e7a09b73023" hs_bindgen_99362e7a09b73023 :: + 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_99362e7a09b73023 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1414: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_99362e7a09b73023 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_24c40b583ee6429f" hs_bindgen_24c40b583ee6429f :: + 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_24c40b583ee6429f + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1416: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_24c40b583ee6429f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_9d0960f44fea90f0" hs_bindgen_9d0960f44fea90f0 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1418: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_9d0960f44fea90f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_637278914f62bde4" hs_bindgen_637278914f62bde4 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1420: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_637278914f62bde4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_65ca3c4d96c711e8" hs_bindgen_65ca3c4d96c711e8 :: + 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_65ca3c4d96c711e8 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1426: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_65ca3c4d96c711e8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_9126cc730920763f" hs_bindgen_9126cc730920763f :: + 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_9126cc730920763f + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1428: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_9126cc730920763f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_b8ca2a93b4f9a9ac" hs_bindgen_b8ca2a93b4f9a9ac :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1430: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_b8ca2a93b4f9a9ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_efc4d97542bf9a63" hs_bindgen_efc4d97542bf9a63 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1432: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_efc4d97542bf9a63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_b77f3841cb74490a" hs_bindgen_b77f3841cb74490a :: + 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_b77f3841cb74490a + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1438: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_b77f3841cb74490a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_5cd173883c0c68d0" hs_bindgen_5cd173883c0c68d0 :: + 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_5cd173883c0c68d0 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1440: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_5cd173883c0c68d0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_6d99903f1d021d25" hs_bindgen_6d99903f1d021d25 :: + 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:1443: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_6d99903f1d021d25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_fbdfb3091123a4aa" hs_bindgen_fbdfb3091123a4aa :: + 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:1446: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_fbdfb3091123a4aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_992f779ad1c354b9" hs_bindgen_992f779ad1c354b9 :: + 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:1452: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_992f779ad1c354b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_e2f9f8da9d12f72a" hs_bindgen_e2f9f8da9d12f72a :: + 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:1455: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_e2f9f8da9d12f72a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_eca808160d99b512" hs_bindgen_eca808160d99b512 :: + 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:1461: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_eca808160d99b512 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_f50ef65f67c5d81c" hs_bindgen_f50ef65f67c5d81c :: + 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:1467: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_f50ef65f67c5d81c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_98407eae09680298" hs_bindgen_98407eae09680298 :: + 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:1470: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_98407eae09680298 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_2d72298cb488c722" hs_bindgen_2d72298cb488c722 :: + 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:1476: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_2d72298cb488c722 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_bfaed123a9fc6026" hs_bindgen_bfaed123a9fc6026 :: + 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:1480: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_bfaed123a9fc6026 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_997bb9c180fe0055" hs_bindgen_997bb9c180fe0055 :: + 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:1487: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_997bb9c180fe0055 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_f153909247430523" hs_bindgen_f153909247430523 :: + 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:1490: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_f153909247430523 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_f72a8d128f19ae47" hs_bindgen_f72a8d128f19ae47 :: + 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:1497: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_f72a8d128f19ae47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_76d136276cc59ca7" hs_bindgen_76d136276cc59ca7 :: + 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:1505: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_76d136276cc59ca7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_af2b3465db9eb11a" hs_bindgen_af2b3465db9eb11a :: + 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:1510: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_af2b3465db9eb11a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_ac0ab5e12dd088ad" hs_bindgen_ac0ab5e12dd088ad :: + 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:1513: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_ac0ab5e12dd088ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_1a77de3c65d34197" hs_bindgen_1a77de3c65d34197 :: + 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_1a77de3c65d34197 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1516: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_1a77de3c65d34197 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_65ff69bf85ea9514" hs_bindgen_65ff69bf85ea9514 :: + 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:1529: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_65ff69bf85ea9514 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_685fc5e8293ad957" hs_bindgen_685fc5e8293ad957 :: + 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:1534: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_685fc5e8293ad957 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_5c14a46cc0d5589c" hs_bindgen_5c14a46cc0d5589c :: + 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:1537: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_5c14a46cc0d5589c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_7ff19f3716b8cc23" hs_bindgen_7ff19f3716b8cc23 :: + 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_7ff19f3716b8cc23 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1540: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_7ff19f3716b8cc23 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_a761f74e89572d56" hs_bindgen_a761f74e89572d56 :: + 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:1552: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_a761f74e89572d56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_b7aa24a1b017f058" hs_bindgen_b7aa24a1b017f058 :: + 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:1557: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_b7aa24a1b017f058 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_6fc07e37eba7fbb9" hs_bindgen_6fc07e37eba7fbb9 :: + 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:1559: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_6fc07e37eba7fbb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_50b151c5a4aa7425" hs_bindgen_50b151c5a4aa7425 :: + 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_50b151c5a4aa7425 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1561: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_50b151c5a4aa7425 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_10313288be0dd6bb" hs_bindgen_10313288be0dd6bb :: + 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:1564: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_10313288be0dd6bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_695355eade63d0ab" hs_bindgen_695355eade63d0ab :: + 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:1572: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_695355eade63d0ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_d86b2eef6161ecef" hs_bindgen_d86b2eef6161ecef :: + 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:1580: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_d86b2eef6161ecef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_a89b8c223241e4a0" hs_bindgen_a89b8c223241e4a0 :: + 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_a89b8c223241e4a0 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1582: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_a89b8c223241e4a0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_4975bce441ebfacb" hs_bindgen_4975bce441ebfacb :: + 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_4975bce441ebfacb + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1583: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_4975bce441ebfacb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_271ce282b6f98db1" hs_bindgen_271ce282b6f98db1 :: + 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:1591: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_271ce282b6f98db1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_190d260d69069184" hs_bindgen_190d260d69069184 :: + 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:1596: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_190d260d69069184 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_ed6540a811efbc66" hs_bindgen_ed6540a811efbc66 :: + 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:1598: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_ed6540a811efbc66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_7cad4938cfd04796" hs_bindgen_7cad4938cfd04796 :: + 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:1601: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_7cad4938cfd04796 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_71057a450d149886" hs_bindgen_71057a450d149886 :: + 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:1603: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_71057a450d149886 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_30cdb16116184910" hs_bindgen_30cdb16116184910 :: + 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_30cdb16116184910 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1606: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_30cdb16116184910 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_f5fb2b77ee8d607e" hs_bindgen_f5fb2b77ee8d607e :: + 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:1620: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_f5fb2b77ee8d607e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_20a844e50f0a0b15" hs_bindgen_20a844e50f0a0b15 :: + 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:1625: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_20a844e50f0a0b15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_11b14cedec74c145" hs_bindgen_11b14cedec74c145 :: + 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:1628: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_11b14cedec74c145 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_59156c5a08feaf05" hs_bindgen_59156c5a08feaf05 :: + 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:1633: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_59156c5a08feaf05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_48198efec50c465e" hs_bindgen_48198efec50c465e :: + 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_48198efec50c465e + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1637: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_48198efec50c465e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_b29b8938e87af0d1" hs_bindgen_b29b8938e87af0d1 :: + 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:1650: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_b29b8938e87af0d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_41d2c31391f7c6b6" hs_bindgen_41d2c31391f7c6b6 :: + 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:1655: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_41d2c31391f7c6b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_c36d16342966d21c" hs_bindgen_c36d16342966d21c :: + 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:1658: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_c36d16342966d21c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_514555d10694abd3" hs_bindgen_514555d10694abd3 :: + 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_514555d10694abd3 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1663: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_514555d10694abd3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_af32cd2868337e5d" hs_bindgen_af32cd2868337e5d :: + 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:1676: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_af32cd2868337e5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_6d800b6380087ef1" hs_bindgen_6d800b6380087ef1 :: + 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_6d800b6380087ef1 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1683: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_6d800b6380087ef1 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_8e0c67ca48abff81" hs_bindgen_8e0c67ca48abff81 :: + 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_8e0c67ca48abff81 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1698: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_8e0c67ca48abff81 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_64d5d46403b3570e" hs_bindgen_64d5d46403b3570e :: + 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_64d5d46403b3570e + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1713: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_64d5d46403b3570e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_888318c194813c26" hs_bindgen_888318c194813c26 :: + 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:1714: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_888318c194813c26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_2fdca54f5f8bdcb3" hs_bindgen_2fdca54f5f8bdcb3 :: + 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:1719: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_2fdca54f5f8bdcb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_69e06ef086d100b3" hs_bindgen_69e06ef086d100b3 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1721: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_69e06ef086d100b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_1ed7ffd6326b08c4" hs_bindgen_1ed7ffd6326b08c4 :: + 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:1724: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_1ed7ffd6326b08c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_9be4a971d855f70f" hs_bindgen_9be4a971d855f70f :: + 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:1725: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_9be4a971d855f70f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_f935c20a506518b0" hs_bindgen_f935c20a506518b0 :: + 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:1727: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_f935c20a506518b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_3af9f9140c109453" hs_bindgen_3af9f9140c109453 :: + 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:1728: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_3af9f9140c109453 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_19dd638271a473ca" hs_bindgen_19dd638271a473ca :: + 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:1731: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_19dd638271a473ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_a4acb13bba23d8ad" hs_bindgen_a4acb13bba23d8ad :: + 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:1733: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_a4acb13bba23d8ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_03d1ff497cb9a7a6" hs_bindgen_03d1ff497cb9a7a6 :: + 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:1734: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_03d1ff497cb9a7a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_4e1b9a58aa086db2" hs_bindgen_4e1b9a58aa086db2 :: + 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:1735: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_4e1b9a58aa086db2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_6815b2902620d5d3" hs_bindgen_6815b2902620d5d3 :: + 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:1737: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_6815b2902620d5d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_7f3fe2a4850926d8" hs_bindgen_7f3fe2a4850926d8 :: + 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:1740: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_7f3fe2a4850926d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_ef2cbd129c62d31c" hs_bindgen_ef2cbd129c62d31c :: + 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:1742: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_ef2cbd129c62d31c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_d73bc4be944b9351" hs_bindgen_d73bc4be944b9351 :: + 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:1745: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_d73bc4be944b9351 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_c9752bc138f0a492" hs_bindgen_c9752bc138f0a492 :: + 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:1749: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_c9752bc138f0a492 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_8666aa9104709c96" hs_bindgen_8666aa9104709c96 :: + 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:1752: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_8666aa9104709c96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_79f141f09a9bfadb" hs_bindgen_79f141f09a9bfadb :: + 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:1755: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_79f141f09a9bfadb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_ab8b336f39e39275" hs_bindgen_ab8b336f39e39275 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1771: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_ab8b336f39e39275 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_efa7a524af3adc60" hs_bindgen_efa7a524af3adc60 :: + 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:1777: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_efa7a524af3adc60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_fbd1ed865be8dc07" hs_bindgen_fbd1ed865be8dc07 :: + 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:1788: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_fbd1ed865be8dc07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_635bb37d6a955fdc" hs_bindgen_635bb37d6a955fdc :: + 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:1803: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_635bb37d6a955fdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_43f4258a1fe22a37" hs_bindgen_43f4258a1fe22a37 :: + 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:1811: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_43f4258a1fe22a37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_2c8450ab8ca707fd" hs_bindgen_2c8450ab8ca707fd :: + 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_2c8450ab8ca707fd + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1813: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_2c8450ab8ca707fd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_3c8251b4f4ca03e4" hs_bindgen_3c8251b4f4ca03e4 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1815: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_3c8251b4f4ca03e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_bb803589c4f0aefc" hs_bindgen_bb803589c4f0aefc :: + 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:1821: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_bb803589c4f0aefc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_f3e42c95102c1644" hs_bindgen_f3e42c95102c1644 :: + 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:1828: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_f3e42c95102c1644 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_91bb8a4ca8468640" hs_bindgen_91bb8a4ca8468640 :: + 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_91bb8a4ca8468640 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1846: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_91bb8a4ca8468640 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_8a8c0bfceed3e957" hs_bindgen_8a8c0bfceed3e957 :: + 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_8a8c0bfceed3e957 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1855: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_8a8c0bfceed3e957 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_d1b60fac3d12a7a2" hs_bindgen_d1b60fac3d12a7a2 :: + 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_d1b60fac3d12a7a2 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1863: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_d1b60fac3d12a7a2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_241eda7317486db2" hs_bindgen_241eda7317486db2 :: + 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_241eda7317486db2 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1873: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_241eda7317486db2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_cd600aa3041e15d4" hs_bindgen_cd600aa3041e15d4 :: + 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_cd600aa3041e15d4 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1892: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_cd600aa3041e15d4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_b7c22928c01bdc02" hs_bindgen_b7c22928c01bdc02 :: + 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:1899:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_b7c22928c01bdc02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_9af34ba843b43530" hs_bindgen_9af34ba843b43530 :: + 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:1905: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_9af34ba843b43530 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_43578d0480ca6b80" hs_bindgen_43578d0480ca6b80 :: + 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:1911: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_43578d0480ca6b80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_bdebac98f7b308b9" hs_bindgen_bdebac98f7b308b9 :: + 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_bdebac98f7b308b9 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1924: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_bdebac98f7b308b9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_1afeabebff2736f1" hs_bindgen_1afeabebff2736f1 :: + 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:1932:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_1afeabebff2736f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_c329fa6d7d30ead2" hs_bindgen_c329fa6d7d30ead2 :: + 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:1941: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_c329fa6d7d30ead2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_735811989bc5559a" hs_bindgen_735811989bc5559a :: + 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:1952: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_735811989bc5559a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_af43282b42684dde" hs_bindgen_af43282b42684dde :: + 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_af43282b42684dde + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1963: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_af43282b42684dde x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_e1f18bcf152c7023" hs_bindgen_e1f18bcf152c7023 :: + 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:1970:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_e1f18bcf152c7023 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_8e3e130b63fc6e6c" hs_bindgen_8e3e130b63fc6e6c :: + 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_8e3e130b63fc6e6c + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1973: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_8e3e130b63fc6e6c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_45d19ac618952939" hs_bindgen_45d19ac618952939 :: + 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_45d19ac618952939 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1976: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_45d19ac618952939 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_a344426be9101326" hs_bindgen_a344426be9101326 :: + 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:1988: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_a344426be9101326 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_50e786f478878bfc" hs_bindgen_50e786f478878bfc :: + 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:1996: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_50e786f478878bfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_b0ca2477456ad44f" hs_bindgen_b0ca2477456ad44f :: + 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_b0ca2477456ad44f + +{-| 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:2011: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_b0ca2477456ad44f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_97db259931470015" hs_bindgen_97db259931470015 :: + 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_97db259931470015 + +{-| 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:2030: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_97db259931470015 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_77b1156a6bed7c47" hs_bindgen_77b1156a6bed7c47 :: + 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_77b1156a6bed7c47 + +{-| 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:2046: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_77b1156a6bed7c47 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_03ae3987932750c8" hs_bindgen_03ae3987932750c8 :: + 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_03ae3987932750c8 + +{-| 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:2073: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_03ae3987932750c8 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_1_1_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_bc50e4b5b8565f48" hs_bindgen_bc50e4b5b8565f48 :: + 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:2091: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_bc50e4b5b8565f48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_aa595d7d36e93a96" hs_bindgen_aa595d7d36e93a96 :: + 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:2112: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_aa595d7d36e93a96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_a13c4b8d6e6cc28c" hs_bindgen_a13c4b8d6e6cc28c :: + 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:2133: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_a13c4b8d6e6cc28c diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/Unsafe.hs new file mode 100644 index 00000000..1b3e77a9 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_1_1/Unsafe.hs @@ -0,0 +1,12243 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_1_1.Unsafe where + +import Botan.Bindings.Generated.Botan_3_1_1 +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_148bc9adbc153f18 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_9d2d39f24cdff011 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_7aa03bedcee93208 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_3fd15ad37bac68d2 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_84d0fa500c1e45a2 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_57cd7ca149981e14 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_ca5106146e8057b7 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_2055c7e1d58715af (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_e0c9d4944ae82792 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_5b483a3c81537f81 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfeb4f8e794d4e24 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_55ca4e4b4a5c80bf (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d598d4430231094e (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_102823b24ab9e135 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3abd4b258adb5716 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_824fc9ad148720fc (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a7e61fd6a03fa885 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2bbed32374c31904 (" + , " 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_67b4ee307534282d (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a941cee1c6f4093 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f704d49d8f881ffe (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff4a1c0db8365587 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_973c3f742002056f (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_08c3e05d21bfc6ab (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a2a54fc876a22e72 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb25d913738ab6c3 (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55efc29f93b6bfcf (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f814653fd79e2c5 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf877ffa5efdf795 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8fa00a6b999871fd (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_517cba0bb1d5a975 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_b93521be0ff8bcb2 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c5a324ec57d296b9 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27314635e02f979e (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_346e46b70aec5ef3 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_72d4598cdaa8df70 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f705ceeb1e09b769 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50166ada2999de18 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3e3177b5db1eec24 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e003b2e9d5ac295e (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_7f2b9d6e36c5440b (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9bca21942218f1de (" + , " 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_15b711cc5935355f (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e8542a33a682aefc (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6f7dd54d6ba3b090 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bb9179f7361a64b3 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e78a95edb6297dc5 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3de645545d4c9504 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ab28eb17aa513202 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f56334dfd493cfa8 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f4f8861ea03efa9 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3830982f7fecb0f (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27a27e5546eee55b (" + , " 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_259ad2cbfda2df54 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f97de6f231251c6 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_9b2fa0c930eac6fd (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9235daac4379fc4c (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c46d7cd53214258d (" + , " 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_39ecb2e37b80a5fc (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_ae481f32ec939262 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_41fe36c3b1d0349d (" + , " 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_ca94c4c422948ede (" + , " 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_61232bfa143dcbaa (" + , " 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_9cb5a673ddcf228f (" + , " 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_57d22c3f75a7fd21 (" + , " 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_ff5422884c04c4fd (" + , " 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_98e67b8a65bb36e9 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fcdddacf7df7d076 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8e44f8bab6d4cd4f (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_210f6a2636bcc2d6 (" + , " 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_577fd6193c617f10 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_a7170022e941e19f (" + , " 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_2974bc3d20b3431b (" + , " 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_27e0570e35fda60f (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4d7afd1a638f4188 (" + , " 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_e39c3fa0fe7b13d6 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_eb4c74ccddb9bcd8 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d6bdd3aa71c08732 (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_242d5d1cead4e0a2 (" + , " 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_1e88697af520db42 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_0d258f3c0a70f960 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b887e1f72e8f9906 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_89a6b0e086bb3f82 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_995901692bfcc9ab (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b79f7c67c28bfffa (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e9533215d9674d2d (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1e689a62ed437712 (" + , " botan_mp_t const arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e73adbb4a147deb (" + , " botan_mp_t const arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c6e7955022123678 (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_382efbd0821a50e6 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_5910b22d8692ef0e (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_0cf0d26d4e5faeb4 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_3e7373d001a5b841 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_630311fd5eca57e1 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_baf49ab4accae838 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_db38d130ec4dea92 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53dd1f1902a9438f (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8b22094cb3d7ab62 (" + , " 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_326b6d4f56e2bb51 (" + , " 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_7d9cc10c1d536ab6 (" + , " 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_bb3468b147e761cc (" + , " 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_cfdda8e8bf546cf9 (" + , " 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_3d78e46f5f9ec514 (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9fb6815425797161 (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_69df77d01262ce47 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0471d26b183ac536 (" + , " 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_ee4a5ee1f480ff90 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0c698474dae09fac (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_89935aff188fa5e5 (" + , " 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_15308b26f17e7071 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8f819647679b9fc3 (" + , " 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_832e8fdc110fe3ad (" + , " 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_f30095c06f432759 (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_14d881eeca587f5a (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_01343e45cd471ac1 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c36371fe770935a7 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_990dfc80c2ae9821 (" + , " 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_e7f0f7eb8160cd98 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7fdf8d11f4a9c398 (" + , " 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_f66c7339f1dce5b1 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ba59745ec2429e8 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e2cf450637a8c596 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_413dd4af041ad7cc (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd1f1a855be2ccde (" + , " 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_b1125fa938cd459a (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1e804b69aea542fe (" + , " 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_3ed9025e6759d6d8 (" + , " 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_0df92cc5a1ca6f9b (" + , " 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_41e89c2a251d66e3 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5feb0d1165d12c4d (" + , " 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_9b31c1d9765276f2 (" + , " 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_f54004d7d1a99a68 (" + , " 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_a3d4429bb0a9c38d (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7323b1d22509bfe7 (" + , " 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_049e9981c6d561f1 (" + , " 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_a45ed56cf3dd82c0 (" + , " 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_f343eba3235e7d17 (" + , " 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_dba2228eac2384ba (" + , " 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_52a5cfbfa6d92bcc (" + , " 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_9dea84141e5887e7 (" + , " 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_7c6f7875bca59062 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9e58af7a4e2f04c8 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0f97a9e942f3039a (" + , " 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_3930342ea6a9cfc4 (" + , " 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_bd3399ddcf62f157 (" + , " 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_642dfeeefc618acc (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cab763edaf309b1c (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_07b894ee800a7c40 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_90e48989a7afcf74 (" + , " 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_707f993330a81365 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ab7735b24655d024 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b913ead7aa7bce28 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fcc21324c8bfb77f (" + , " 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_2f6bab5d9110d8cf (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cfedede30c14cae5 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_873e52f239226b1c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_358f64aa1586f292 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d7c2d8a9dbf8aa6 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_63166a770d1e623d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8fc31a77b9f1c539 (" + , " 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_4363ce29d95d2703 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_241bedd552e63fec (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0dc28b11ce2382d5 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_96e5ec4d09b3a79c (" + , " 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_fd9f4226934933ee (" + , " 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_a734cc032a565322 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5afdd65fe9d54c8d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9506d429563c74fb (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e73d087f6f9b47f6 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bcea294b3f54258a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_639ac3f615742b83 (" + , " 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_f60f3386162b3823 (" + , " 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_c5f18354dc36c603 (" + , " 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_4d87f4efbdf65464 (" + , " 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_796d36d7f184d8e8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_250494c23129de4d (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34933865ce933cf5 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c7be0650a607eca3 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f31612fe4fe8253 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_31751358ab580a4c (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0907788f7e9c1780 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ddd90f0c6c92b4a (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a6b409316de19b6c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c0585c0f58d51c8 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_39118bef69773dfe (" + , " 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_e53775dfaa9147e5 (" + , " 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_69d9ecc6b214f09a (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d7daaae57b83751 (" + , " 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_1c132b5858e6ac5a (" + , " 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_e0461efb5f0211c3 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b8340d07c447cf21 (" + , " 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_e4259b256fa959e7 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e215465c38925f7 (" + , " 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_a73cc7c6b7f31574 (" + , " 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_592d4f08e6ae1d44 (" + , " 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_cc96de854861c6f8 (" + , " 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_b19b876ce96fecf8 (" + , " 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_e394d33dd6867d63 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8c3f9dd3a33136ef (" + , " 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_f2088a8e577c8b78 (" + , " 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_852317f7dc622d18 (" + , " 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_141ca073b45d0353 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1c77988d682d388c (" + , " 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_6ab020e6eb3ef937 (" + , " 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_cc066a88ef8257dd (" + , " 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_6b05ca68a728d207 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9ea47165e81da6cc (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d1e90014b8bbfe5 (" + , " 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_9976f6409bcae321 (" + , " 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_ea242a40fa92f007 (" + , " 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_d4befe4ecfabea00 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b0665fe112d0b67d (" + , " 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_081413c5a7317113 (" + , " 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_0e457f5477a6ceaf (" + , " 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_754fd06fbef1afdc (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_78e4966802d8bf0b (" + , " 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_594866a40e29360d (" + , " 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_2fdb58e0bd0543a6 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9caf803877f8d297 (" + , " 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_c4fda6ae17333827 (" + , " 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_8ce695f7ad2f4012 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d96c2f62ab6ba108 (" + , " 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_2d44217dee43ab5c (" + , " 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_a8a1f3ed9ca415b4 (" + , " 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_03aab989aeaf5c8f (" + , " 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_1081cb859aa6d107 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1720fa3e8fe374f7 (" + , " 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_e397f7c5f1f654c5 (" + , " 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_2c6dd0b1fc388865 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82f517b28feaa802 (" + , " 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_e1c94a9772e4f675 (" + , " 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_38761d6ea41b8d7d (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_711ca8cdadbfcc84 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_25dc1a0c9bc0d327 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9b5f3f92c8538dcb (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_316ff8b4016b216f (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42d2d637ac1ab52a (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_750950620cb46158 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_053398608f15ad8e (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53a67821b09b0124 (" + , " 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_7f36c4d6ca161191 (" + , " 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_22140e8f6fb65052 (" + , " 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_ea8ba9cd5763f49e (" + , " 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_1934276175606b84 (" + , " 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_6e1b90015980e5eb (" + , " 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_29a35018936e89fe (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5a96c8d97cfe9609 (" + , " 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_b7f28b86538eeb31 (" + , " 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_4df5b70a08d7a1f4 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8662a35d9b1bb9cb (" + , " 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_5d60e6ecff683808 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d79688ad0c02487a (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ff5a2d30cf66333 (" + , " 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_b39513f1a5474144 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_14e54e5c29eabcd3 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aaa3370cad0bf6e6 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9bcd64ba465c840a (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e63e2a4859175551 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_640b3c823f8b1a8f (" + , " 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_ddfd76650df6deb4 (" + , " 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_781f124fb88c0e0b (" + , " 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_5419b9308eb609a8 (" + , " 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_d8f12391dd904239 (" + , " 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_f390effcfb323306 (" + , " 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_e163208d8767cc77 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e281bd791f26ad0b (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_db4ed6cb3e33e9a7 (" + , " 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_5010bb77416110a1 (" + , " 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_889760bf3e8da1aa (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c758a51e1d5dd72c (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_26bf75fdb92d2b53 (" + , " 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_80e6dafa96898abb (" + , " 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_0f2ab4aa8196b8ad (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7c491ed357036fa9 (" + , " 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_4847731f929ceab9 (" + , " 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_729f1c20f800477f (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_7d1b6481cdc84b69 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8654de99f52b9018 (" + , " 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_925ff94be55d4dfb (" + , " 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_dbf9a79045a7aa7d (" + , " 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_1a1ab57ee43b8088 (" + , " 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_f07133ff18049ef0 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ad6065f10b31f9c5 (" + , " 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_22f37cf18e20193c (" + , " 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_1_1_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_148bc9adbc153f18" hs_bindgen_148bc9adbc153f18 :: + 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:144: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_148bc9adbc153f18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_9d2d39f24cdff011" hs_bindgen_9d2d39f24cdff011 :: + 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:153: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_9d2d39f24cdff011 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_7aa03bedcee93208" hs_bindgen_7aa03bedcee93208 :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_7aa03bedcee93208 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_3fd15ad37bac68d2" hs_bindgen_3fd15ad37bac68d2 :: + 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:166: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_3fd15ad37bac68d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_84d0fa500c1e45a2" hs_bindgen_84d0fa500c1e45a2 :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_84d0fa500c1e45a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_57cd7ca149981e14" hs_bindgen_57cd7ca149981e14 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_57cd7ca149981e14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_ca5106146e8057b7" hs_bindgen_ca5106146e8057b7 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_ca5106146e8057b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_2055c7e1d58715af" hs_bindgen_2055c7e1d58715af :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_2055c7e1d58715af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_e0c9d4944ae82792" hs_bindgen_e0c9d4944ae82792 :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_e0c9d4944ae82792 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_5b483a3c81537f81" hs_bindgen_5b483a3c81537f81 :: + 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:197: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_5b483a3c81537f81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_dfeb4f8e794d4e24" hs_bindgen_dfeb4f8e794d4e24 :: + 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:203: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_dfeb4f8e794d4e24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_55ca4e4b4a5c80bf" hs_bindgen_55ca4e4b4a5c80bf :: + 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:209: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_55ca4e4b4a5c80bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_d598d4430231094e" hs_bindgen_d598d4430231094e :: + 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:221: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_d598d4430231094e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_102823b24ab9e135" hs_bindgen_102823b24ab9e135 :: + 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:231: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_102823b24ab9e135 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_3abd4b258adb5716" hs_bindgen_3abd4b258adb5716 :: + 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:236:28@ + +__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_3abd4b258adb5716 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_824fc9ad148720fc" hs_bindgen_824fc9ad148720fc :: + 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:241: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_824fc9ad148720fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_a7e61fd6a03fa885" hs_bindgen_a7e61fd6a03fa885 :: + 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:258: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 "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_a7e61fd6a03fa885 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_2bbed32374c31904" hs_bindgen_2bbed32374c31904 :: + 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:270: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_2bbed32374c31904 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_67b4ee307534282d" hs_bindgen_67b4ee307534282d :: + 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:284: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_67b4ee307534282d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_4a941cee1c6f4093" hs_bindgen_4a941cee1c6f4093 :: + 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:292: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_4a941cee1c6f4093 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_f704d49d8f881ffe" hs_bindgen_f704d49d8f881ffe :: + 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:302: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_f704d49d8f881ffe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_ff4a1c0db8365587" hs_bindgen_ff4a1c0db8365587 :: + 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:312: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_ff4a1c0db8365587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_973c3f742002056f" hs_bindgen_973c3f742002056f :: + 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:322: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_973c3f742002056f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_08c3e05d21bfc6ab" hs_bindgen_08c3e05d21bfc6ab :: + 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:329: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_08c3e05d21bfc6ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_a2a54fc876a22e72" hs_bindgen_a2a54fc876a22e72 :: + 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:343: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_a2a54fc876a22e72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_eb25d913738ab6c3" hs_bindgen_eb25d913738ab6c3 :: + 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:351: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_eb25d913738ab6c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_55efc29f93b6bfcf" hs_bindgen_55efc29f93b6bfcf :: + 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:359: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_55efc29f93b6bfcf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_5f814653fd79e2c5" hs_bindgen_5f814653fd79e2c5 :: + 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:367: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_5f814653fd79e2c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_cf877ffa5efdf795" hs_bindgen_cf877ffa5efdf795 :: + 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:376: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_cf877ffa5efdf795 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_8fa00a6b999871fd" hs_bindgen_8fa00a6b999871fd :: + 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:386: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_8fa00a6b999871fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_517cba0bb1d5a975" hs_bindgen_517cba0bb1d5a975 :: + 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:394: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_517cba0bb1d5a975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_b93521be0ff8bcb2" hs_bindgen_b93521be0ff8bcb2 :: + 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:401: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_b93521be0ff8bcb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_c5a324ec57d296b9" hs_bindgen_c5a324ec57d296b9 :: + 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:409: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_c5a324ec57d296b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_27314635e02f979e" hs_bindgen_27314635e02f979e :: + 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:424: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_27314635e02f979e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_346e46b70aec5ef3" hs_bindgen_346e46b70aec5ef3 :: + 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:432: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_346e46b70aec5ef3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_72d4598cdaa8df70" hs_bindgen_72d4598cdaa8df70 :: + 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:441: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_72d4598cdaa8df70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_f705ceeb1e09b769" hs_bindgen_f705ceeb1e09b769 :: + 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:450: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_f705ceeb1e09b769 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_50166ada2999de18" hs_bindgen_50166ada2999de18 :: + 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:459: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_50166ada2999de18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_3e3177b5db1eec24" hs_bindgen_3e3177b5db1eec24 :: + 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:469: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_3e3177b5db1eec24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_e003b2e9d5ac295e" hs_bindgen_e003b2e9d5ac295e :: + 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:477: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_e003b2e9d5ac295e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_7f2b9d6e36c5440b" hs_bindgen_7f2b9d6e36c5440b :: + 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:485: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_7f2b9d6e36c5440b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_9bca21942218f1de" hs_bindgen_9bca21942218f1de :: + 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:495: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_9bca21942218f1de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_15b711cc5935355f" hs_bindgen_15b711cc5935355f :: + 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:505: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_15b711cc5935355f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_e8542a33a682aefc" hs_bindgen_e8542a33a682aefc :: + 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:519: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_e8542a33a682aefc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_6f7dd54d6ba3b090" hs_bindgen_6f7dd54d6ba3b090 :: + 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:524: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_6f7dd54d6ba3b090 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_bb9179f7361a64b3" hs_bindgen_bb9179f7361a64b3 :: + 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:529: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_bb9179f7361a64b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_e78a95edb6297dc5" hs_bindgen_e78a95edb6297dc5 :: + 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:534: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_e78a95edb6297dc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_3de645545d4c9504" hs_bindgen_3de645545d4c9504 :: + 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:539: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_3de645545d4c9504 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_ab28eb17aa513202" hs_bindgen_ab28eb17aa513202 :: + 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:544: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_ab28eb17aa513202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_f56334dfd493cfa8" hs_bindgen_f56334dfd493cfa8 :: + 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:550: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_f56334dfd493cfa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_5f4f8861ea03efa9" hs_bindgen_5f4f8861ea03efa9 :: + 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:556: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_5f4f8861ea03efa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_a3830982f7fecb0f" hs_bindgen_a3830982f7fecb0f :: + 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:562:5@ + +__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_a3830982f7fecb0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_27a27e5546eee55b" hs_bindgen_27a27e5546eee55b :: + 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:568:5@ + +__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_27a27e5546eee55b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_259ad2cbfda2df54" hs_bindgen_259ad2cbfda2df54 :: + 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:573: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_259ad2cbfda2df54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_2f97de6f231251c6" hs_bindgen_2f97de6f231251c6 :: + 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:583:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_2f97de6f231251c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_9b2fa0c930eac6fd" hs_bindgen_9b2fa0c930eac6fd :: + 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:588: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_9b2fa0c930eac6fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_9235daac4379fc4c" hs_bindgen_9235daac4379fc4c :: + 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:593: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_9235daac4379fc4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_c46d7cd53214258d" hs_bindgen_c46d7cd53214258d :: + 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_c46d7cd53214258d + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:601: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_c46d7cd53214258d x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_39ecb2e37b80a5fc" hs_bindgen_39ecb2e37b80a5fc :: + 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:613:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_39ecb2e37b80a5fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_ae481f32ec939262" hs_bindgen_ae481f32ec939262 :: + 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:619:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_ae481f32ec939262 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_41fe36c3b1d0349d" hs_bindgen_41fe36c3b1d0349d :: + 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_41fe36c3b1d0349d + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:638: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_41fe36c3b1d0349d x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_ca94c4c422948ede" hs_bindgen_ca94c4c422948ede :: + 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_ca94c4c422948ede + +{-| 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:671: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_ca94c4c422948ede x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_61232bfa143dcbaa" hs_bindgen_61232bfa143dcbaa :: + 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_61232bfa143dcbaa + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:695: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_61232bfa143dcbaa x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_9cb5a673ddcf228f" hs_bindgen_9cb5a673ddcf228f :: + 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_9cb5a673ddcf228f + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:722: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_9cb5a673ddcf228f x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_57d22c3f75a7fd21" hs_bindgen_57d22c3f75a7fd21 :: + 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_57d22c3f75a7fd21 + +{-| 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:741: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_57d22c3f75a7fd21 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_ff5422884c04c4fd" hs_bindgen_ff5422884c04c4fd :: + 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_ff5422884c04c4fd + +{-| 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:764: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_ff5422884c04c4fd 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_1_1_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_98e67b8a65bb36e9" hs_bindgen_98e67b8a65bb36e9 :: + 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:782: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_98e67b8a65bb36e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_fcdddacf7df7d076" hs_bindgen_fcdddacf7df7d076 :: + 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:788: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_fcdddacf7df7d076 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_8e44f8bab6d4cd4f" hs_bindgen_8e44f8bab6d4cd4f :: + 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:794: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_8e44f8bab6d4cd4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_210f6a2636bcc2d6" hs_bindgen_210f6a2636bcc2d6 :: + 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_210f6a2636bcc2d6 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:799: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_210f6a2636bcc2d6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_577fd6193c617f10" hs_bindgen_577fd6193c617f10 :: + 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:805: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_577fd6193c617f10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_a7170022e941e19f" hs_bindgen_a7170022e941e19f :: + 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_a7170022e941e19f + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:811: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_a7170022e941e19f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_2974bc3d20b3431b" hs_bindgen_2974bc3d20b3431b :: + 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_2974bc3d20b3431b + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:817: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_2974bc3d20b3431b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_27e0570e35fda60f" hs_bindgen_27e0570e35fda60f :: + 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:825: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_27e0570e35fda60f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_4d7afd1a638f4188" hs_bindgen_4d7afd1a638f4188 :: + 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:835: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_4d7afd1a638f4188 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_e39c3fa0fe7b13d6" hs_bindgen_e39c3fa0fe7b13d6 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:848: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_e39c3fa0fe7b13d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_eb4c74ccddb9bcd8" hs_bindgen_eb4c74ccddb9bcd8 :: + 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:854:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_eb4c74ccddb9bcd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_d6bdd3aa71c08732" hs_bindgen_d6bdd3aa71c08732 :: + 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:859: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_d6bdd3aa71c08732 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_242d5d1cead4e0a2" hs_bindgen_242d5d1cead4e0a2 :: + 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:864:28@ + +__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_242d5d1cead4e0a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_1e88697af520db42" hs_bindgen_1e88697af520db42 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:869:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_1e88697af520db42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_0d258f3c0a70f960" hs_bindgen_0d258f3c0a70f960 :: + 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:874: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_0d258f3c0a70f960 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_b887e1f72e8f9906" hs_bindgen_b887e1f72e8f9906 :: + 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:879: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_b887e1f72e8f9906 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_89a6b0e086bb3f82" hs_bindgen_89a6b0e086bb3f82 :: + 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:884: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_89a6b0e086bb3f82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_995901692bfcc9ab" hs_bindgen_995901692bfcc9ab :: + 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:890: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_995901692bfcc9ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_b79f7c67c28bfffa" hs_bindgen_b79f7c67c28bfffa :: + 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:895: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_b79f7c67c28bfffa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_e9533215d9674d2d" hs_bindgen_e9533215d9674d2d :: + 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:900: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_e9533215d9674d2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_1e689a62ed437712" hs_bindgen_1e689a62ed437712 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:905: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_1e689a62ed437712 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_3e73adbb4a147deb" hs_bindgen_3e73adbb4a147deb :: + 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_3e73adbb4a147deb + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:910: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_3e73adbb4a147deb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_c6e7955022123678" hs_bindgen_c6e7955022123678 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:915: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_c6e7955022123678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_382efbd0821a50e6" hs_bindgen_382efbd0821a50e6 :: + 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:922: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_382efbd0821a50e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_5910b22d8692ef0e" hs_bindgen_5910b22d8692ef0e :: + 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:927: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_5910b22d8692ef0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_0cf0d26d4e5faeb4" hs_bindgen_0cf0d26d4e5faeb4 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:929: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_0cf0d26d4e5faeb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_3e7373d001a5b841" hs_bindgen_3e7373d001a5b841 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:931: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_3e7373d001a5b841 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_630311fd5eca57e1" hs_bindgen_630311fd5eca57e1 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:933: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_630311fd5eca57e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_baf49ab4accae838" hs_bindgen_baf49ab4accae838 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:934: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_baf49ab4accae838 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_db38d130ec4dea92" hs_bindgen_db38d130ec4dea92 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:936: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_db38d130ec4dea92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_53dd1f1902a9438f" hs_bindgen_53dd1f1902a9438f :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:937: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_53dd1f1902a9438f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_8b22094cb3d7ab62" hs_bindgen_8b22094cb3d7ab62 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:939: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_8b22094cb3d7ab62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_326b6d4f56e2bb51" hs_bindgen_326b6d4f56e2bb51 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:940: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_326b6d4f56e2bb51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_7d9cc10c1d536ab6" hs_bindgen_7d9cc10c1d536ab6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:941: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_7d9cc10c1d536ab6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_bb3468b147e761cc" hs_bindgen_bb3468b147e761cc :: + 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:944: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_bb3468b147e761cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_cfdda8e8bf546cf9" hs_bindgen_cfdda8e8bf546cf9 :: + 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:947: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_cfdda8e8bf546cf9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_3d78e46f5f9ec514" hs_bindgen_3d78e46f5f9ec514 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:954: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_3d78e46f5f9ec514 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_9fb6815425797161" hs_bindgen_9fb6815425797161 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:961: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_9fb6815425797161 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_69df77d01262ce47" hs_bindgen_69df77d01262ce47 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:966: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_69df77d01262ce47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_0471d26b183ac536" hs_bindgen_0471d26b183ac536 :: + 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:970: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_0471d26b183ac536 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_ee4a5ee1f480ff90" hs_bindgen_ee4a5ee1f480ff90 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:972: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_ee4a5ee1f480ff90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_0c698474dae09fac" hs_bindgen_0c698474dae09fac :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:973: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_0c698474dae09fac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_89935aff188fa5e5" hs_bindgen_89935aff188fa5e5 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:975: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_89935aff188fa5e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_15308b26f17e7071" hs_bindgen_15308b26f17e7071 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:977: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_15308b26f17e7071 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_8f819647679b9fc3" hs_bindgen_8f819647679b9fc3 :: + 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:980: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_8f819647679b9fc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_832e8fdc110fe3ad" hs_bindgen_832e8fdc110fe3ad :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:985: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_832e8fdc110fe3ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_f30095c06f432759" hs_bindgen_f30095c06f432759 :: + 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:992: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_f30095c06f432759 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_14d881eeca587f5a" hs_bindgen_14d881eeca587f5a :: + 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:999: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_14d881eeca587f5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_01343e45cd471ac1" hs_bindgen_01343e45cd471ac1 :: + 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:1004: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_01343e45cd471ac1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_c36371fe770935a7" hs_bindgen_c36371fe770935a7 :: + 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:1009: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_c36371fe770935a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_990dfc80c2ae9821" hs_bindgen_990dfc80c2ae9821 :: + 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:1027: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_990dfc80c2ae9821 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_e7f0f7eb8160cd98" hs_bindgen_e7f0f7eb8160cd98 :: + 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:1038: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_e7f0f7eb8160cd98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_7fdf8d11f4a9c398" hs_bindgen_7fdf8d11f4a9c398 :: + 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:1054: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_7fdf8d11f4a9c398 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_f66c7339f1dce5b1" hs_bindgen_f66c7339f1dce5b1 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1058: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_f66c7339f1dce5b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_9ba59745ec2429e8" hs_bindgen_9ba59745ec2429e8 :: + 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:1061: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_9ba59745ec2429e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_e2cf450637a8c596" hs_bindgen_e2cf450637a8c596 :: + 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:1063: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_e2cf450637a8c596 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_413dd4af041ad7cc" hs_bindgen_413dd4af041ad7cc :: + 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:1065: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_413dd4af041ad7cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_dd1f1a855be2ccde" hs_bindgen_dd1f1a855be2ccde :: + 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:1067: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_dd1f1a855be2ccde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_b1125fa938cd459a" hs_bindgen_b1125fa938cd459a :: + 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:1069: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_b1125fa938cd459a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_1e804b69aea542fe" hs_bindgen_1e804b69aea542fe :: + 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:1089: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_1e804b69aea542fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_3ed9025e6759d6d8" hs_bindgen_3ed9025e6759d6d8 :: + 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:1111: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_3ed9025e6759d6d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_0df92cc5a1ca6f9b" hs_bindgen_0df92cc5a1ca6f9b :: + 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_0df92cc5a1ca6f9b + +{-| 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:1119: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_0df92cc5a1ca6f9b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_41e89c2a251d66e3" hs_bindgen_41e89c2a251d66e3 :: + 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:1124:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_41e89c2a251d66e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_5feb0d1165d12c4d" hs_bindgen_5feb0d1165d12c4d :: + 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:1136: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_5feb0d1165d12c4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_9b31c1d9765276f2" hs_bindgen_9b31c1d9765276f2 :: + 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:1141: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_9b31c1d9765276f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_f54004d7d1a99a68" hs_bindgen_f54004d7d1a99a68 :: + 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:1146: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_f54004d7d1a99a68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_a3d4429bb0a9c38d" hs_bindgen_a3d4429bb0a9c38d :: + 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:1148: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_a3d4429bb0a9c38d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_7323b1d22509bfe7" hs_bindgen_7323b1d22509bfe7 :: + 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:1155: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_7323b1d22509bfe7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_049e9981c6d561f1" hs_bindgen_049e9981c6d561f1 :: + 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:1170: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_049e9981c6d561f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_a45ed56cf3dd82c0" hs_bindgen_a45ed56cf3dd82c0 :: + 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:1185: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_a45ed56cf3dd82c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_f343eba3235e7d17" hs_bindgen_f343eba3235e7d17 :: + 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:1202: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_f343eba3235e7d17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_dba2228eac2384ba" hs_bindgen_dba2228eac2384ba :: + 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:1217: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_dba2228eac2384ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_52a5cfbfa6d92bcc" hs_bindgen_52a5cfbfa6d92bcc :: + 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:1233: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_52a5cfbfa6d92bcc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_9dea84141e5887e7" hs_bindgen_9dea84141e5887e7 :: + 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:1248: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_9dea84141e5887e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_7c6f7875bca59062" hs_bindgen_7c6f7875bca59062 :: + 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_7c6f7875bca59062 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1259: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_7c6f7875bca59062 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_9e58af7a4e2f04c8" hs_bindgen_9e58af7a4e2f04c8 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1261: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_9e58af7a4e2f04c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_0f97a9e942f3039a" hs_bindgen_0f97a9e942f3039a :: + 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:1263: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_0f97a9e942f3039a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_3930342ea6a9cfc4" hs_bindgen_3930342ea6a9cfc4 :: + 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:1268: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_3930342ea6a9cfc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_bd3399ddcf62f157" hs_bindgen_bd3399ddcf62f157 :: + 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:1273: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_bd3399ddcf62f157 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_642dfeeefc618acc" hs_bindgen_642dfeeefc618acc :: + 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:1275: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_642dfeeefc618acc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_cab763edaf309b1c" hs_bindgen_cab763edaf309b1c :: + 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:1280: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_cab763edaf309b1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_07b894ee800a7c40" hs_bindgen_07b894ee800a7c40 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1282: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_07b894ee800a7c40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_90e48989a7afcf74" hs_bindgen_90e48989a7afcf74 :: + 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:1285: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_90e48989a7afcf74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_707f993330a81365" hs_bindgen_707f993330a81365 :: + 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:1290:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_707f993330a81365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_ab7735b24655d024" hs_bindgen_ab7735b24655d024 :: + 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:1295: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_ab7735b24655d024 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b913ead7aa7bce28" hs_bindgen_b913ead7aa7bce28 :: + 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:1297: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_b913ead7aa7bce28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_fcc21324c8bfb77f" hs_bindgen_fcc21324c8bfb77f :: + 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:1302: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_fcc21324c8bfb77f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_2f6bab5d9110d8cf" hs_bindgen_2f6bab5d9110d8cf :: + 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_2f6bab5d9110d8cf + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1304: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_2f6bab5d9110d8cf x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_cfedede30c14cae5" hs_bindgen_cfedede30c14cae5 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1307: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_cfedede30c14cae5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_873e52f239226b1c" hs_bindgen_873e52f239226b1c :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1309: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_873e52f239226b1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_358f64aa1586f292" hs_bindgen_358f64aa1586f292 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1311: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_358f64aa1586f292 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_1d7c2d8a9dbf8aa6" hs_bindgen_1d7c2d8a9dbf8aa6 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1313: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_1d7c2d8a9dbf8aa6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_63166a770d1e623d" hs_bindgen_63166a770d1e623d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1315: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_63166a770d1e623d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_8fc31a77b9f1c539" hs_bindgen_8fc31a77b9f1c539 :: + 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:1318: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_8fc31a77b9f1c539 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_4363ce29d95d2703" hs_bindgen_4363ce29d95d2703 :: + 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:1320: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_4363ce29d95d2703 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_241bedd552e63fec" hs_bindgen_241bedd552e63fec :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1323: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_241bedd552e63fec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_0dc28b11ce2382d5" hs_bindgen_0dc28b11ce2382d5 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1325: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_0dc28b11ce2382d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_96e5ec4d09b3a79c" hs_bindgen_96e5ec4d09b3a79c :: + 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:1331: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_96e5ec4d09b3a79c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_fd9f4226934933ee" hs_bindgen_fd9f4226934933ee :: + 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:1334: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_fd9f4226934933ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_a734cc032a565322" hs_bindgen_a734cc032a565322 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1337: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_a734cc032a565322 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_5afdd65fe9d54c8d" hs_bindgen_5afdd65fe9d54c8d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1340: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_5afdd65fe9d54c8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_9506d429563c74fb" hs_bindgen_9506d429563c74fb :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1342: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_9506d429563c74fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_e73d087f6f9b47f6" hs_bindgen_e73d087f6f9b47f6 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1344: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_e73d087f6f9b47f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_bcea294b3f54258a" hs_bindgen_bcea294b3f54258a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1346: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_bcea294b3f54258a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_639ac3f615742b83" hs_bindgen_639ac3f615742b83 :: + 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:1361: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_639ac3f615742b83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_f60f3386162b3823" hs_bindgen_f60f3386162b3823 :: + 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:1375: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_f60f3386162b3823 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_c5f18354dc36c603" hs_bindgen_c5f18354dc36c603 :: + 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:1393: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_c5f18354dc36c603 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_4d87f4efbdf65464" hs_bindgen_4d87f4efbdf65464 :: + 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:1408: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_4d87f4efbdf65464 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_796d36d7f184d8e8" hs_bindgen_796d36d7f184d8e8 :: + 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_796d36d7f184d8e8 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1414: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_796d36d7f184d8e8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_250494c23129de4d" hs_bindgen_250494c23129de4d :: + 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_250494c23129de4d + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1416: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_250494c23129de4d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_34933865ce933cf5" hs_bindgen_34933865ce933cf5 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1418: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_34933865ce933cf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_c7be0650a607eca3" hs_bindgen_c7be0650a607eca3 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1420: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_c7be0650a607eca3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_6f31612fe4fe8253" hs_bindgen_6f31612fe4fe8253 :: + 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_6f31612fe4fe8253 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1426: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_6f31612fe4fe8253 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_31751358ab580a4c" hs_bindgen_31751358ab580a4c :: + 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_31751358ab580a4c + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1428: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_31751358ab580a4c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_0907788f7e9c1780" hs_bindgen_0907788f7e9c1780 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1430: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_0907788f7e9c1780 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_4ddd90f0c6c92b4a" hs_bindgen_4ddd90f0c6c92b4a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1432: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_4ddd90f0c6c92b4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_a6b409316de19b6c" hs_bindgen_a6b409316de19b6c :: + 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_a6b409316de19b6c + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1438: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_a6b409316de19b6c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_2c0585c0f58d51c8" hs_bindgen_2c0585c0f58d51c8 :: + 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_2c0585c0f58d51c8 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1440: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_2c0585c0f58d51c8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_39118bef69773dfe" hs_bindgen_39118bef69773dfe :: + 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:1443: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_39118bef69773dfe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_e53775dfaa9147e5" hs_bindgen_e53775dfaa9147e5 :: + 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:1446: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_e53775dfaa9147e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_69d9ecc6b214f09a" hs_bindgen_69d9ecc6b214f09a :: + 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:1452: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_69d9ecc6b214f09a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2d7daaae57b83751" hs_bindgen_2d7daaae57b83751 :: + 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:1455: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_2d7daaae57b83751 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_1c132b5858e6ac5a" hs_bindgen_1c132b5858e6ac5a :: + 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:1461: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_1c132b5858e6ac5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_e0461efb5f0211c3" hs_bindgen_e0461efb5f0211c3 :: + 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:1467: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_e0461efb5f0211c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_b8340d07c447cf21" hs_bindgen_b8340d07c447cf21 :: + 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:1470: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_b8340d07c447cf21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_e4259b256fa959e7" hs_bindgen_e4259b256fa959e7 :: + 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:1476: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_e4259b256fa959e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_6e215465c38925f7" hs_bindgen_6e215465c38925f7 :: + 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:1480: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_6e215465c38925f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_a73cc7c6b7f31574" hs_bindgen_a73cc7c6b7f31574 :: + 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:1487: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_a73cc7c6b7f31574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_592d4f08e6ae1d44" hs_bindgen_592d4f08e6ae1d44 :: + 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:1490: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_592d4f08e6ae1d44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_cc96de854861c6f8" hs_bindgen_cc96de854861c6f8 :: + 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:1497: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_cc96de854861c6f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_b19b876ce96fecf8" hs_bindgen_b19b876ce96fecf8 :: + 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:1505: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_b19b876ce96fecf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_e394d33dd6867d63" hs_bindgen_e394d33dd6867d63 :: + 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:1510: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_e394d33dd6867d63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_8c3f9dd3a33136ef" hs_bindgen_8c3f9dd3a33136ef :: + 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:1513: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_8c3f9dd3a33136ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_f2088a8e577c8b78" hs_bindgen_f2088a8e577c8b78 :: + 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_f2088a8e577c8b78 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1516: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_f2088a8e577c8b78 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_852317f7dc622d18" hs_bindgen_852317f7dc622d18 :: + 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:1529: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_852317f7dc622d18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_141ca073b45d0353" hs_bindgen_141ca073b45d0353 :: + 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:1534: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_141ca073b45d0353 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_1c77988d682d388c" hs_bindgen_1c77988d682d388c :: + 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:1537: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_1c77988d682d388c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_6ab020e6eb3ef937" hs_bindgen_6ab020e6eb3ef937 :: + 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_6ab020e6eb3ef937 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1540: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_6ab020e6eb3ef937 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_cc066a88ef8257dd" hs_bindgen_cc066a88ef8257dd :: + 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:1552: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_cc066a88ef8257dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_6b05ca68a728d207" hs_bindgen_6b05ca68a728d207 :: + 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:1557: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_6b05ca68a728d207 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_9ea47165e81da6cc" hs_bindgen_9ea47165e81da6cc :: + 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:1559: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_9ea47165e81da6cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_0d1e90014b8bbfe5" hs_bindgen_0d1e90014b8bbfe5 :: + 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_0d1e90014b8bbfe5 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1561: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_0d1e90014b8bbfe5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_9976f6409bcae321" hs_bindgen_9976f6409bcae321 :: + 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:1564: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_9976f6409bcae321 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_ea242a40fa92f007" hs_bindgen_ea242a40fa92f007 :: + 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:1572: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_ea242a40fa92f007 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_d4befe4ecfabea00" hs_bindgen_d4befe4ecfabea00 :: + 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:1580: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_d4befe4ecfabea00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_b0665fe112d0b67d" hs_bindgen_b0665fe112d0b67d :: + 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_b0665fe112d0b67d + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1582: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_b0665fe112d0b67d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_081413c5a7317113" hs_bindgen_081413c5a7317113 :: + 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_081413c5a7317113 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1583: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_081413c5a7317113 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_0e457f5477a6ceaf" hs_bindgen_0e457f5477a6ceaf :: + 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:1591: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_0e457f5477a6ceaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_754fd06fbef1afdc" hs_bindgen_754fd06fbef1afdc :: + 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:1596: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_754fd06fbef1afdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_78e4966802d8bf0b" hs_bindgen_78e4966802d8bf0b :: + 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:1598: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_78e4966802d8bf0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_594866a40e29360d" hs_bindgen_594866a40e29360d :: + 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:1601: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_594866a40e29360d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_2fdb58e0bd0543a6" hs_bindgen_2fdb58e0bd0543a6 :: + 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:1603: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_2fdb58e0bd0543a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_9caf803877f8d297" hs_bindgen_9caf803877f8d297 :: + 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_9caf803877f8d297 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1606: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_9caf803877f8d297 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_c4fda6ae17333827" hs_bindgen_c4fda6ae17333827 :: + 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:1620: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_c4fda6ae17333827 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_8ce695f7ad2f4012" hs_bindgen_8ce695f7ad2f4012 :: + 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:1625: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_8ce695f7ad2f4012 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_d96c2f62ab6ba108" hs_bindgen_d96c2f62ab6ba108 :: + 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:1628: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_d96c2f62ab6ba108 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_2d44217dee43ab5c" hs_bindgen_2d44217dee43ab5c :: + 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:1633: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_2d44217dee43ab5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_a8a1f3ed9ca415b4" hs_bindgen_a8a1f3ed9ca415b4 :: + 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_a8a1f3ed9ca415b4 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1637: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_a8a1f3ed9ca415b4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_03aab989aeaf5c8f" hs_bindgen_03aab989aeaf5c8f :: + 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:1650: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_03aab989aeaf5c8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_1081cb859aa6d107" hs_bindgen_1081cb859aa6d107 :: + 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:1655: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_1081cb859aa6d107 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_1720fa3e8fe374f7" hs_bindgen_1720fa3e8fe374f7 :: + 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:1658: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_1720fa3e8fe374f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_e397f7c5f1f654c5" hs_bindgen_e397f7c5f1f654c5 :: + 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_e397f7c5f1f654c5 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1663: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_e397f7c5f1f654c5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_2c6dd0b1fc388865" hs_bindgen_2c6dd0b1fc388865 :: + 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:1676: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_2c6dd0b1fc388865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_82f517b28feaa802" hs_bindgen_82f517b28feaa802 :: + 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_82f517b28feaa802 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1683: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_82f517b28feaa802 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_e1c94a9772e4f675" hs_bindgen_e1c94a9772e4f675 :: + 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_e1c94a9772e4f675 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1698: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_e1c94a9772e4f675 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_38761d6ea41b8d7d" hs_bindgen_38761d6ea41b8d7d :: + 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_38761d6ea41b8d7d + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1713: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_38761d6ea41b8d7d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_711ca8cdadbfcc84" hs_bindgen_711ca8cdadbfcc84 :: + 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:1714: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_711ca8cdadbfcc84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_25dc1a0c9bc0d327" hs_bindgen_25dc1a0c9bc0d327 :: + 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:1719: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_25dc1a0c9bc0d327 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_9b5f3f92c8538dcb" hs_bindgen_9b5f3f92c8538dcb :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1721: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_9b5f3f92c8538dcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_316ff8b4016b216f" hs_bindgen_316ff8b4016b216f :: + 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:1724: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_316ff8b4016b216f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_42d2d637ac1ab52a" hs_bindgen_42d2d637ac1ab52a :: + 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:1725: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_42d2d637ac1ab52a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_750950620cb46158" hs_bindgen_750950620cb46158 :: + 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:1727: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_750950620cb46158 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_053398608f15ad8e" hs_bindgen_053398608f15ad8e :: + 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:1728: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_053398608f15ad8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_53a67821b09b0124" hs_bindgen_53a67821b09b0124 :: + 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:1731: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_53a67821b09b0124 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_7f36c4d6ca161191" hs_bindgen_7f36c4d6ca161191 :: + 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:1733: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_7f36c4d6ca161191 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_22140e8f6fb65052" hs_bindgen_22140e8f6fb65052 :: + 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:1734: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_22140e8f6fb65052 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_ea8ba9cd5763f49e" hs_bindgen_ea8ba9cd5763f49e :: + 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:1735: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_ea8ba9cd5763f49e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_1934276175606b84" hs_bindgen_1934276175606b84 :: + 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:1737: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_1934276175606b84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_6e1b90015980e5eb" hs_bindgen_6e1b90015980e5eb :: + 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:1740: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_6e1b90015980e5eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_29a35018936e89fe" hs_bindgen_29a35018936e89fe :: + 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:1742: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_29a35018936e89fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_5a96c8d97cfe9609" hs_bindgen_5a96c8d97cfe9609 :: + 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:1745: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_5a96c8d97cfe9609 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_b7f28b86538eeb31" hs_bindgen_b7f28b86538eeb31 :: + 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:1749: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_b7f28b86538eeb31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_4df5b70a08d7a1f4" hs_bindgen_4df5b70a08d7a1f4 :: + 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:1752: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_4df5b70a08d7a1f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_8662a35d9b1bb9cb" hs_bindgen_8662a35d9b1bb9cb :: + 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:1755: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_8662a35d9b1bb9cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_5d60e6ecff683808" hs_bindgen_5d60e6ecff683808 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1771: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_5d60e6ecff683808 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_d79688ad0c02487a" hs_bindgen_d79688ad0c02487a :: + 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:1777: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_d79688ad0c02487a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_3ff5a2d30cf66333" hs_bindgen_3ff5a2d30cf66333 :: + 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:1788: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_3ff5a2d30cf66333 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_b39513f1a5474144" hs_bindgen_b39513f1a5474144 :: + 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:1803: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_b39513f1a5474144 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_14e54e5c29eabcd3" hs_bindgen_14e54e5c29eabcd3 :: + 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:1811: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_14e54e5c29eabcd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_aaa3370cad0bf6e6" hs_bindgen_aaa3370cad0bf6e6 :: + 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_aaa3370cad0bf6e6 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1813: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_aaa3370cad0bf6e6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_9bcd64ba465c840a" hs_bindgen_9bcd64ba465c840a :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1815: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_9bcd64ba465c840a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_e63e2a4859175551" hs_bindgen_e63e2a4859175551 :: + 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:1821: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_e63e2a4859175551 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_640b3c823f8b1a8f" hs_bindgen_640b3c823f8b1a8f :: + 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:1828: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_640b3c823f8b1a8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_ddfd76650df6deb4" hs_bindgen_ddfd76650df6deb4 :: + 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_ddfd76650df6deb4 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1846: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_ddfd76650df6deb4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_781f124fb88c0e0b" hs_bindgen_781f124fb88c0e0b :: + 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_781f124fb88c0e0b + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1855: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_781f124fb88c0e0b (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_5419b9308eb609a8" hs_bindgen_5419b9308eb609a8 :: + 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_5419b9308eb609a8 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1863: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_5419b9308eb609a8 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_d8f12391dd904239" hs_bindgen_d8f12391dd904239 :: + 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_d8f12391dd904239 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1873: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_d8f12391dd904239 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_f390effcfb323306" hs_bindgen_f390effcfb323306 :: + 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_f390effcfb323306 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1892: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_f390effcfb323306 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_e163208d8767cc77" hs_bindgen_e163208d8767cc77 :: + 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:1899:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_e163208d8767cc77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_e281bd791f26ad0b" hs_bindgen_e281bd791f26ad0b :: + 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:1905: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_e281bd791f26ad0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_db4ed6cb3e33e9a7" hs_bindgen_db4ed6cb3e33e9a7 :: + 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:1911: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_db4ed6cb3e33e9a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_5010bb77416110a1" hs_bindgen_5010bb77416110a1 :: + 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_5010bb77416110a1 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1924: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_5010bb77416110a1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_889760bf3e8da1aa" hs_bindgen_889760bf3e8da1aa :: + 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:1932:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_889760bf3e8da1aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_c758a51e1d5dd72c" hs_bindgen_c758a51e1d5dd72c :: + 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:1941: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_c758a51e1d5dd72c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_26bf75fdb92d2b53" hs_bindgen_26bf75fdb92d2b53 :: + 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:1952: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_26bf75fdb92d2b53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_80e6dafa96898abb" hs_bindgen_80e6dafa96898abb :: + 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_80e6dafa96898abb + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1963: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_80e6dafa96898abb x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_0f2ab4aa8196b8ad" hs_bindgen_0f2ab4aa8196b8ad :: + 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:1970:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_0f2ab4aa8196b8ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_7c491ed357036fa9" hs_bindgen_7c491ed357036fa9 :: + 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_7c491ed357036fa9 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1973: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_7c491ed357036fa9 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_4847731f929ceab9" hs_bindgen_4847731f929ceab9 :: + 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_4847731f929ceab9 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1976: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_4847731f929ceab9 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_729f1c20f800477f" hs_bindgen_729f1c20f800477f :: + 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:1988: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_729f1c20f800477f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_7d1b6481cdc84b69" hs_bindgen_7d1b6481cdc84b69 :: + 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:1996: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_7d1b6481cdc84b69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_8654de99f52b9018" hs_bindgen_8654de99f52b9018 :: + 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_8654de99f52b9018 + +{-| 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:2011: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_8654de99f52b9018 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_925ff94be55d4dfb" hs_bindgen_925ff94be55d4dfb :: + 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_925ff94be55d4dfb + +{-| 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:2030: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_925ff94be55d4dfb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_dbf9a79045a7aa7d" hs_bindgen_dbf9a79045a7aa7d :: + 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_dbf9a79045a7aa7d + +{-| 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:2046: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_dbf9a79045a7aa7d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_1a1ab57ee43b8088" hs_bindgen_1a1ab57ee43b8088 :: + 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_1a1ab57ee43b8088 + +{-| 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:2073: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_1a1ab57ee43b8088 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_1_1_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_f07133ff18049ef0" hs_bindgen_f07133ff18049ef0 :: + 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:2091: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_f07133ff18049ef0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_ad6065f10b31f9c5" hs_bindgen_ad6065f10b31f9c5 :: + 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:2112: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_ad6065f10b31f9c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_1_1_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_22f37cf18e20193c" hs_bindgen_22f37cf18e20193c :: + 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:2133: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_22f37cf18e20193c diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0.hs new file mode 100644 index 00000000..a47e9262 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_2_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:88: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 + +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:89: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:90: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:92: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:93: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:95: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:96: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:98: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:99: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:100: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:101: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:103: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:104: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:105: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:106: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:107: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:108: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:110: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:111: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:113: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:114: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:115: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:117: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:120: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' + +__defined at:__ @botan\/ffi.h:129:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:129: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:138:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:138: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:211:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:246:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:246: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:334:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:334: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:414:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:414: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:510:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:510: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:512: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:513: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:514: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:595: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:777:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:777: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:843:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:843: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1040:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1040: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:1053: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:1123: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:1124:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1254:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1254: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1490:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1490: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1514:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1514: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:1535:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1537:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1537: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1557:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1557: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1576:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1576: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1605: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:1605: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1635: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:1635: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1699:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1699: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1746: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 + +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:1747: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:1748: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:1749: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:1750: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:1751: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:1752: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:1753: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:1754: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:1755: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:1756: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1797:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1797: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1874:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1874: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1906:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1906: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:1946:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:1946: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:1948: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:1969: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:1969: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_2_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/FunPtr.hs new file mode 100644 index 00000000..bb8bfda8 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/FunPtr.hs @@ -0,0 +1,8319 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_2_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_2_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_2_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_76fa9d91b832396d (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_a6ee18803de28b9b (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_b2d3e84db600d43a (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2caaaa039235d6d1 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_9e63d3b4b06e2014 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_e7f6429fda789541 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_7ef0ebce8c1201ff (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_4063df6aad591f33 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_09a6f9e6dcad1e25 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6dec3d8e90faf57 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77cd97c5e30c60a9 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_924f87e994f9fc61 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71a5485bf82ee310 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2057a68eef2fa45d (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26e442c28b138d5e (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9d002dc4109b4f1 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8695138e811875d4 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b0f48b0abe8dbd8 (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_2_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b63e5a37e618464e (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a628c77ab4b0c1a (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_389a14ae8aa2d879 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df2b3ab3a253d0f5 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc246c7faaf43def (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d9c5785465e92af (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e02b786bda3d2ea (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e9b6560e63cccee (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00a7439e6de68ad6 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5c8164db691596f (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c85375c4a9dd83c (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31977e7cf5dff28b (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2da323f28da96527 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a444dde22bef6c0 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a486e747de6dee61 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3901be99814f2db (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_89d764aaa35ac2f0 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ae1b3755d67ff25 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7dd9afda4cf62280 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86d7042942d84bda (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb6a9ae1e4d3a026 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bef95aee29110d6d (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b44c5c1e90443ba6 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bc033bc9869c9be (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_2_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94b2c2a2136a78e1 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_43ebc9a8064ad847 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ef0769e95809a72 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5cf49003daf81d8 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd270eac27944687 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34ce045863ed70e4 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48bf86cc8ab7fedd (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66dfe59a7d580fe1 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ce0c7f053ff21c2 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3552aaf5fe4c57a (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f791baf62ffc001 (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_2_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db0590f966239a46 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3747c72fe6f0860c (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8c34b86cd0d20654 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7f96e8cc98debf9 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84e98ea038b5a3dd (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_2_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2b8a7e0d9334de5 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_373e7f96a8404eff (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c4eca2950ee1e50 (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_2_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da2b504125553025 (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_2_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09cf934939beff88 (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_2_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05e71d03c7f23814 (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_2_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3c606263ea89718 (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_2_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a5cabeca729a033 (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_2_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb4a0fc8e7020dcb (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb175172b4c9ed6b (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b47cfb67f8176363 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_80229cc619033106 (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_2_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86feaea32bcb219c (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11171983ba67ecae (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_2_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78740e820414dc18 (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_2_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dd5bededab478f74 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1f681aab308ef3c7 (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_2_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b3c45078d02e335 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6b993525ce2589cd (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_706b941c99c35816 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f985a46f9e0d2f91 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f94f640e84c02f33 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c7f6c0e660fc939 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41686de44d12ac62 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4cd330f88afa69c (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ab45d3f21528720 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_586216fd0ac22842 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08f8054af90a28cd (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b285a8fb5747d17d (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a249eb725855025 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf1772f5da29de24 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48ed19941f03ec17 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13f2d7b9aa422280 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d360bbcb828f04d (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_802b439d921f535b (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6a0c85067374328 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09db6a900b73ab06 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ebd3c46d02067f6 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84fb840850484375 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b40e79daa847b651 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8cd0423f4eac56af (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ce1f7e2988a2b35 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ce36fe4cd2f0296 (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_2_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6c3267d630fefa3 (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_2_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a036bbe5e7b2c45 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_80d83e9ff7e6edd7 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_17ba6809567954a8 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0655e2f49b5bf953 (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_2_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7236c71365a45f4 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5009246c62ef20a3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8842bf0da229791 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d817f4a90b435cb (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35edaf5bd9e694b5 (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_2_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec9be81cc5552af1 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9253a099141fb275 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28f8c863c6e84c58 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ec2e5fd742d565d (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4253b4338244b96c (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_982c431782e6f750 (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_2_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d38925a66cfa189 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e311e5e13bebf831 (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_2_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e11536953c92587 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2264272c607171d4 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dbf33210417d085a (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d97391c8c38250e9 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd00c90f3ab3594f (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_2_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9aedb6e81b885884 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e88270117d19da04 (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_2_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5af47e4fe12fcf3b (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_2_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_07d66051d55e91c5 (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_2_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_21e73631547b9678 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_931923d23caaf9d1 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05671c82b11364d3 (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_2_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_152401979146ea24 (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_2_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a5e8b00ba180a79 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38e86177139cc3f5 (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_2_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_291960d7642fb787 (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_2_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3afe3b9994c3eaaf (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_2_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72a0293b5643dd24 (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_2_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb8e10426231bed3 (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_2_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_745b03fff92f32e9 (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_2_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a1ed155fb967f87 (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_2_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b9dd03f7e20f6e7 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e24134f28214ada (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09f995c113967692 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_231878a792b9b460 (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_2_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9c1ff3821de5dd4 (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_2_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_162b180acd9e9d02 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2c681e4bfe975c4 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7353c2c86529b90e (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d53dc5220e2f15a (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0cfdd7aa82962250 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90042c6e0856e014 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_767676a3d4dca5a5 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_500ce90dc2bec1d3 (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_2_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28097592bf53dbb6 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d316910b2c7cae95 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ac4d379f94378ea (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47b094487c4ec416 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bb70b8d00cc32ba (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e4175151421bdd3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2317f32ab1c329db (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_2_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40061cbcca15f97c (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c79204f3c4112e02 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eab5a1f823e865ec (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3957988cf2fcb0a4 (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_2_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d5f464fa30df61d (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_2_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_223ed332f3eb52c6 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa20c129a5617fbc (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50442c12c03f0f48 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_60fa4359ebef2770 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d3bfd0203141e04 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d6615f2d9bf72f9 (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_2_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db50505d1828d515 (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_2_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0f4f0c62b39ab38 (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_2_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c85b385f8a4cb3e5 (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_2_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9d80f94ee817a1a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44991af56da221d0 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce3732e516ab2911 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_753c9b2a6c0cd4ff (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4eaf54ba1a59830 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4897f4051d0dfe76 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ed6d117b49346888 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6510436207d67214 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7fefeb6c55b255d (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1f5bc8e8fe001a82 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efb059d8b38945a8 (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_2_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_acf60abbc72ae27d (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_2_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d204c9596897e693 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2435851e0432a259 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8811c2559a66ff6 (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_2_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ff07419b4abc63c (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_2_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b29cb64fa0473393 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2edf32d18fe35429 (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_2_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_256a4efe3f972f35 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6aa58e40aae2ca33 (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_2_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73dd7ee1973d4816 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7909bb967742ccba (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_2_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee9f97fa398afb7b (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_2_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb5261c250d9937d (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_2_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c3b8fcd38f69c2f8 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d8312e2d225a298 (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_2_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c1968f07f63c5d6 (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_2_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b585b915cc7a6491 (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_2_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e47600a57395655 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13677c24c493161a (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_2_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db798203b68262b9 (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_2_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83a013240bc83a8e (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_2_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_def6375257bfa8f9 (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01a1bf8ecf4f1669 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84f080ff4e20f9b4 (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_2_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b546c645efdafe30 (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_2_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79275b36076ca111 (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_2_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0badb7ed7160de94 (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2443e3c489aab74 (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_2_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7cc30598d18bd05 (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_2_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4913fc6b2e9f2753 (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_2_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2b63c4a1117f5058 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b795b03bcbc7ee6a (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_2_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f011a2f10fac1b5 (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_2_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ed445c689f1a0545 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3d21a5a6cfd946c (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_2_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_afddc01dc72f671f (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_2_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee9b5d3ccf486fc4 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c910970a836dfd86 (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_2_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82bbc7bfb5d3c202 (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_2_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44fa65c78a8152b1 (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_2_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97845b7db3d605f3 (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_2_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04eb79f36fe0b092 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31f7ddbacafaced3 (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_2_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05221b9910d3a2e5 (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_2_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69f898e749d0ef68 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04b3435f65eb9b4f (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_2_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0052da4662f28be3 (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_2_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0581b94430bf4e17 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d4d4a47ac669f64 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b699939e688c2adc (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f1e36ac118d0a68 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a663bfaa8d68091 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3e3a68f4e74ed35 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59685468c82993b0 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_731be0d37af2c52d (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf60fd6457d62b3a (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_2_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c24e35bc4d953ebf (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_2_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a781cdec7933ef7d (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_2_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7afb8d8e6f34a13 (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_2_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b1fb7abb8c462a7 (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_2_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7577f6a2bd81762e (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_2_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71daff9438962f74 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c48c6f3ebeec6086 (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_2_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c2ddfa118fe246e0 (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_2_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c72be011d27829c (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31f964ca178f2ca9 (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_2_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_007337fd944a29b1 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bee0f14a30e160ae (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e9bcf795d762ddd (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_2_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_6520e5253f878349 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1be6864a7c1f88a (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce8fe9e1c693b486 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c8cf4312198545f (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1be4101a923c5b29 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81d851608e284aaf (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_2_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c721999c6aed69a (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_2_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_43ccfd46201fb03b (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_2_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49778c4f42337f3b (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_2_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5814e6482f764b97 (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_2_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e6f77e3418699d0 (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_2_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5db02cf9206864e (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3783e6b5bfe7b818 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41b93e6af035c92c (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_2_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4de916b4b2057f2 (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_2_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88c2ac0d5682f743 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8caedc7b6d28a984 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00cabd8163ae5e49 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84e9226a5327ea7a (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_2_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad7e44f6dfe76475 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0d267681c6a4c2b (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_2_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1dc36b89d3555e1 (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_2_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7d8a35caf4d81e8 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef6506d594354341 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8945e776e044c615 (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_2_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fefd1bb2dcea3ef4 (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_2_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_67e99a8d6e33d716 (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_2_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f35582e9dca08e35 (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_2_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_21dfd7e3965e3ca5 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68dc9edf4c1bb3ea (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_2_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a352d707cd27283f (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;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_76fa9d91b832396d" hs_bindgen_76fa9d91b832396d :: + 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:144: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_76fa9d91b832396d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_a6ee18803de28b9b" hs_bindgen_a6ee18803de28b9b :: + 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:153: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_a6ee18803de28b9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_b2d3e84db600d43a" hs_bindgen_b2d3e84db600d43a :: + 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:160: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_b2d3e84db600d43a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_2caaaa039235d6d1" hs_bindgen_2caaaa039235d6d1 :: + 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:166: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_2caaaa039235d6d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_9e63d3b4b06e2014" hs_bindgen_9e63d3b4b06e2014 :: + 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:171: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_9e63d3b4b06e2014 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_e7f6429fda789541" hs_bindgen_e7f6429fda789541 :: + 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:176: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_e7f6429fda789541 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_7ef0ebce8c1201ff" hs_bindgen_7ef0ebce8c1201ff :: + 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:181: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_7ef0ebce8c1201ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_4063df6aad591f33" hs_bindgen_4063df6aad591f33 :: + 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:186: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_4063df6aad591f33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_09a6f9e6dcad1e25" hs_bindgen_09a6f9e6dcad1e25 :: + 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:192: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_09a6f9e6dcad1e25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_e6dec3d8e90faf57" hs_bindgen_e6dec3d8e90faf57 :: + 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:197: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_e6dec3d8e90faf57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_77cd97c5e30c60a9" hs_bindgen_77cd97c5e30c60a9 :: + 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:203: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_77cd97c5e30c60a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_924f87e994f9fc61" hs_bindgen_924f87e994f9fc61 :: + 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:209: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_924f87e994f9fc61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_71a5485bf82ee310" hs_bindgen_71a5485bf82ee310 :: + 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:221: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_71a5485bf82ee310 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_2057a68eef2fa45d" hs_bindgen_2057a68eef2fa45d :: + 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:231: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_2057a68eef2fa45d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_26e442c28b138d5e" hs_bindgen_26e442c28b138d5e :: + 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:236: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_26e442c28b138d5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_b9d002dc4109b4f1" hs_bindgen_b9d002dc4109b4f1 :: + 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:241: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_b9d002dc4109b4f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_8695138e811875d4" hs_bindgen_8695138e811875d4 :: + 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:258: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_8695138e811875d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_4b0f48b0abe8dbd8" hs_bindgen_4b0f48b0abe8dbd8 :: + 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:270: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_4b0f48b0abe8dbd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_b63e5a37e618464e" hs_bindgen_b63e5a37e618464e :: + 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:284: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_b63e5a37e618464e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_4a628c77ab4b0c1a" hs_bindgen_4a628c77ab4b0c1a :: + 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:292: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_4a628c77ab4b0c1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_389a14ae8aa2d879" hs_bindgen_389a14ae8aa2d879 :: + 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:302: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_389a14ae8aa2d879 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_df2b3ab3a253d0f5" hs_bindgen_df2b3ab3a253d0f5 :: + 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:312: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_df2b3ab3a253d0f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_bc246c7faaf43def" hs_bindgen_bc246c7faaf43def :: + 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:322: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_bc246c7faaf43def + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_8d9c5785465e92af" hs_bindgen_8d9c5785465e92af :: + 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:329: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_8d9c5785465e92af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_8e02b786bda3d2ea" hs_bindgen_8e02b786bda3d2ea :: + 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:343: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_8e02b786bda3d2ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_7e9b6560e63cccee" hs_bindgen_7e9b6560e63cccee :: + 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:351: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_7e9b6560e63cccee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_00a7439e6de68ad6" hs_bindgen_00a7439e6de68ad6 :: + 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:359: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_00a7439e6de68ad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_b5c8164db691596f" hs_bindgen_b5c8164db691596f :: + 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:367: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_b5c8164db691596f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_4c85375c4a9dd83c" hs_bindgen_4c85375c4a9dd83c :: + 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:376: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_4c85375c4a9dd83c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_31977e7cf5dff28b" hs_bindgen_31977e7cf5dff28b :: + 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:386: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_31977e7cf5dff28b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_2da323f28da96527" hs_bindgen_2da323f28da96527 :: + 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:394: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_2da323f28da96527 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_8a444dde22bef6c0" hs_bindgen_8a444dde22bef6c0 :: + 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:401: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_8a444dde22bef6c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_a486e747de6dee61" hs_bindgen_a486e747de6dee61 :: + 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:409: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_a486e747de6dee61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_a3901be99814f2db" hs_bindgen_a3901be99814f2db :: + 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:424: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_a3901be99814f2db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_89d764aaa35ac2f0" hs_bindgen_89d764aaa35ac2f0 :: + 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:432: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_89d764aaa35ac2f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_2ae1b3755d67ff25" hs_bindgen_2ae1b3755d67ff25 :: + 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:441: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_2ae1b3755d67ff25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_7dd9afda4cf62280" hs_bindgen_7dd9afda4cf62280 :: + 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:450: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_7dd9afda4cf62280 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_86d7042942d84bda" hs_bindgen_86d7042942d84bda :: + 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:459: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_86d7042942d84bda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_bb6a9ae1e4d3a026" hs_bindgen_bb6a9ae1e4d3a026 :: + 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:469: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_bb6a9ae1e4d3a026 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_bef95aee29110d6d" hs_bindgen_bef95aee29110d6d :: + 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:477: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_bef95aee29110d6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_b44c5c1e90443ba6" hs_bindgen_b44c5c1e90443ba6 :: + 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:485: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_b44c5c1e90443ba6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_0bc033bc9869c9be" hs_bindgen_0bc033bc9869c9be :: + 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:495: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_0bc033bc9869c9be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_94b2c2a2136a78e1" hs_bindgen_94b2c2a2136a78e1 :: + 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:505: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_94b2c2a2136a78e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_43ebc9a8064ad847" hs_bindgen_43ebc9a8064ad847 :: + 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:519: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_43ebc9a8064ad847 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_9ef0769e95809a72" hs_bindgen_9ef0769e95809a72 :: + 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:524: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_9ef0769e95809a72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_a5cf49003daf81d8" hs_bindgen_a5cf49003daf81d8 :: + 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:529: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_a5cf49003daf81d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_bd270eac27944687" hs_bindgen_bd270eac27944687 :: + 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:534: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_bd270eac27944687 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_34ce045863ed70e4" hs_bindgen_34ce045863ed70e4 :: + 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:539: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_34ce045863ed70e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_48bf86cc8ab7fedd" hs_bindgen_48bf86cc8ab7fedd :: + 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:544: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_48bf86cc8ab7fedd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_66dfe59a7d580fe1" hs_bindgen_66dfe59a7d580fe1 :: + 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:550: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_66dfe59a7d580fe1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_6ce0c7f053ff21c2" hs_bindgen_6ce0c7f053ff21c2 :: + 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:556: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_6ce0c7f053ff21c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_e3552aaf5fe4c57a" hs_bindgen_e3552aaf5fe4c57a :: + 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:562: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_e3552aaf5fe4c57a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5f791baf62ffc001" hs_bindgen_5f791baf62ffc001 :: + 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:568: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_5f791baf62ffc001 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_db0590f966239a46" hs_bindgen_db0590f966239a46 :: + 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:573: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_db0590f966239a46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_3747c72fe6f0860c" hs_bindgen_3747c72fe6f0860c :: + 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:583: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_3747c72fe6f0860c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_8c34b86cd0d20654" hs_bindgen_8c34b86cd0d20654 :: + 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:588: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_8c34b86cd0d20654 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_d7f96e8cc98debf9" hs_bindgen_d7f96e8cc98debf9 :: + 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:593: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_d7f96e8cc98debf9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_84e98ea038b5a3dd" hs_bindgen_84e98ea038b5a3dd :: + 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:601: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_84e98ea038b5a3dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_d2b8a7e0d9334de5" hs_bindgen_d2b8a7e0d9334de5 :: + 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:613: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_d2b8a7e0d9334de5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_373e7f96a8404eff" hs_bindgen_373e7f96a8404eff :: + 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:619: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_373e7f96a8404eff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_6c4eca2950ee1e50" hs_bindgen_6c4eca2950ee1e50 :: + 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:638: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_6c4eca2950ee1e50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_da2b504125553025" hs_bindgen_da2b504125553025 :: + 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:671: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_da2b504125553025 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_09cf934939beff88" hs_bindgen_09cf934939beff88 :: + 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:695: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_09cf934939beff88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_05e71d03c7f23814" hs_bindgen_05e71d03c7f23814 :: + 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:722: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_05e71d03c7f23814 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_b3c606263ea89718" hs_bindgen_b3c606263ea89718 :: + 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:741: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_b3c606263ea89718 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_7a5cabeca729a033" hs_bindgen_7a5cabeca729a033 :: + 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:764: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_7a5cabeca729a033 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_fb4a0fc8e7020dcb" hs_bindgen_fb4a0fc8e7020dcb :: + 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:782: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_fb4a0fc8e7020dcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_eb175172b4c9ed6b" hs_bindgen_eb175172b4c9ed6b :: + 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:788: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_eb175172b4c9ed6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_b47cfb67f8176363" hs_bindgen_b47cfb67f8176363 :: + 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:794: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_b47cfb67f8176363 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_80229cc619033106" hs_bindgen_80229cc619033106 :: + 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:799: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_80229cc619033106 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_86feaea32bcb219c" hs_bindgen_86feaea32bcb219c :: + 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:805: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_86feaea32bcb219c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_11171983ba67ecae" hs_bindgen_11171983ba67ecae :: + 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:811: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_11171983ba67ecae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_78740e820414dc18" hs_bindgen_78740e820414dc18 :: + 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:817: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_78740e820414dc18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_dd5bededab478f74" hs_bindgen_dd5bededab478f74 :: + 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:825: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_dd5bededab478f74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_1f681aab308ef3c7" hs_bindgen_1f681aab308ef3c7 :: + 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:835: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_1f681aab308ef3c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_5b3c45078d02e335" hs_bindgen_5b3c45078d02e335 :: + 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:848: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_5b3c45078d02e335 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_6b993525ce2589cd" hs_bindgen_6b993525ce2589cd :: + 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:854: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_6b993525ce2589cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_706b941c99c35816" hs_bindgen_706b941c99c35816 :: + 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:859: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_706b941c99c35816 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_f985a46f9e0d2f91" hs_bindgen_f985a46f9e0d2f91 :: + 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:864: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_f985a46f9e0d2f91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_f94f640e84c02f33" hs_bindgen_f94f640e84c02f33 :: + 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:869: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_f94f640e84c02f33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_9c7f6c0e660fc939" hs_bindgen_9c7f6c0e660fc939 :: + 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:874: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_9c7f6c0e660fc939 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_41686de44d12ac62" hs_bindgen_41686de44d12ac62 :: + 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:879: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_41686de44d12ac62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_e4cd330f88afa69c" hs_bindgen_e4cd330f88afa69c :: + 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:884: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_e4cd330f88afa69c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_3ab45d3f21528720" hs_bindgen_3ab45d3f21528720 :: + 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:890: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_3ab45d3f21528720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_586216fd0ac22842" hs_bindgen_586216fd0ac22842 :: + 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:895: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_586216fd0ac22842 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_08f8054af90a28cd" hs_bindgen_08f8054af90a28cd :: + 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:900: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_08f8054af90a28cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_b285a8fb5747d17d" hs_bindgen_b285a8fb5747d17d :: + 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:905: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_b285a8fb5747d17d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_8a249eb725855025" hs_bindgen_8a249eb725855025 :: + 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:910: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_8a249eb725855025 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_cf1772f5da29de24" hs_bindgen_cf1772f5da29de24 :: + 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:915: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_cf1772f5da29de24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_48ed19941f03ec17" hs_bindgen_48ed19941f03ec17 :: + 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:922: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_48ed19941f03ec17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_13f2d7b9aa422280" hs_bindgen_13f2d7b9aa422280 :: + 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:927: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_13f2d7b9aa422280 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_3d360bbcb828f04d" hs_bindgen_3d360bbcb828f04d :: + 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:929: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_3d360bbcb828f04d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_802b439d921f535b" hs_bindgen_802b439d921f535b :: + 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:931: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_802b439d921f535b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_f6a0c85067374328" hs_bindgen_f6a0c85067374328 :: + 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:933: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_f6a0c85067374328 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_09db6a900b73ab06" hs_bindgen_09db6a900b73ab06 :: + 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:934: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_09db6a900b73ab06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_2ebd3c46d02067f6" hs_bindgen_2ebd3c46d02067f6 :: + 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:936: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_2ebd3c46d02067f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_84fb840850484375" hs_bindgen_84fb840850484375 :: + 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:937: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_84fb840850484375 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_b40e79daa847b651" hs_bindgen_b40e79daa847b651 :: + 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:939: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_b40e79daa847b651 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_8cd0423f4eac56af" hs_bindgen_8cd0423f4eac56af :: + 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:940: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_8cd0423f4eac56af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_8ce1f7e2988a2b35" hs_bindgen_8ce1f7e2988a2b35 :: + 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:941: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_8ce1f7e2988a2b35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_6ce36fe4cd2f0296" hs_bindgen_6ce36fe4cd2f0296 :: + 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:944: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_6ce36fe4cd2f0296 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_d6c3267d630fefa3" hs_bindgen_d6c3267d630fefa3 :: + 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:947: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_d6c3267d630fefa3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_2a036bbe5e7b2c45" hs_bindgen_2a036bbe5e7b2c45 :: + 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:954: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_2a036bbe5e7b2c45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_80d83e9ff7e6edd7" hs_bindgen_80d83e9ff7e6edd7 :: + 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:961: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_80d83e9ff7e6edd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_17ba6809567954a8" hs_bindgen_17ba6809567954a8 :: + 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:966: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_17ba6809567954a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_0655e2f49b5bf953" hs_bindgen_0655e2f49b5bf953 :: + 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:970: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_0655e2f49b5bf953 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_b7236c71365a45f4" hs_bindgen_b7236c71365a45f4 :: + 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:972: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_b7236c71365a45f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_5009246c62ef20a3" hs_bindgen_5009246c62ef20a3 :: + 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:973: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_5009246c62ef20a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_a8842bf0da229791" hs_bindgen_a8842bf0da229791 :: + 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:975: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_a8842bf0da229791 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_8d817f4a90b435cb" hs_bindgen_8d817f4a90b435cb :: + 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:977: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_8d817f4a90b435cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_35edaf5bd9e694b5" hs_bindgen_35edaf5bd9e694b5 :: + 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:980: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_35edaf5bd9e694b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_ec9be81cc5552af1" hs_bindgen_ec9be81cc5552af1 :: + 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:982: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_ec9be81cc5552af1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_9253a099141fb275" hs_bindgen_9253a099141fb275 :: + 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:989: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_9253a099141fb275 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_28f8c863c6e84c58" hs_bindgen_28f8c863c6e84c58 :: + 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:996: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_28f8c863c6e84c58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_0ec2e5fd742d565d" hs_bindgen_0ec2e5fd742d565d :: + 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:1001: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_0ec2e5fd742d565d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_4253b4338244b96c" hs_bindgen_4253b4338244b96c :: + 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:1006: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_4253b4338244b96c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_982c431782e6f750" hs_bindgen_982c431782e6f750 :: + 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:1024: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_982c431782e6f750 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_9d38925a66cfa189" hs_bindgen_9d38925a66cfa189 :: + 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:1035: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_9d38925a66cfa189 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_e311e5e13bebf831" hs_bindgen_e311e5e13bebf831 :: + 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:1051: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_e311e5e13bebf831 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_8e11536953c92587" hs_bindgen_8e11536953c92587 :: + 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:1055: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_8e11536953c92587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_2264272c607171d4" hs_bindgen_2264272c607171d4 :: + 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:1058: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_2264272c607171d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_dbf33210417d085a" hs_bindgen_dbf33210417d085a :: + 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:1060: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_dbf33210417d085a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_d97391c8c38250e9" hs_bindgen_d97391c8c38250e9 :: + 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:1062: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_d97391c8c38250e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_fd00c90f3ab3594f" hs_bindgen_fd00c90f3ab3594f :: + 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:1064: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_fd00c90f3ab3594f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_9aedb6e81b885884" hs_bindgen_9aedb6e81b885884 :: + 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:1066: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_9aedb6e81b885884 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_e88270117d19da04" hs_bindgen_e88270117d19da04 :: + 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:1086: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_e88270117d19da04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_5af47e4fe12fcf3b" hs_bindgen_5af47e4fe12fcf3b :: + 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:1108: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_5af47e4fe12fcf3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_07d66051d55e91c5" hs_bindgen_07d66051d55e91c5 :: + 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:1116: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_07d66051d55e91c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_21e73631547b9678" hs_bindgen_21e73631547b9678 :: + 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:1121: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_21e73631547b9678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_931923d23caaf9d1" hs_bindgen_931923d23caaf9d1 :: + 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:1133: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_931923d23caaf9d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_05671c82b11364d3" hs_bindgen_05671c82b11364d3 :: + 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:1138: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_05671c82b11364d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_152401979146ea24" hs_bindgen_152401979146ea24 :: + 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:1143: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_152401979146ea24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_3a5e8b00ba180a79" hs_bindgen_3a5e8b00ba180a79 :: + 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:1145: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_3a5e8b00ba180a79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_38e86177139cc3f5" hs_bindgen_38e86177139cc3f5 :: + 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:1152: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_38e86177139cc3f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_291960d7642fb787" hs_bindgen_291960d7642fb787 :: + 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:1167: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_291960d7642fb787 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_3afe3b9994c3eaaf" hs_bindgen_3afe3b9994c3eaaf :: + 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:1182: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_3afe3b9994c3eaaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_72a0293b5643dd24" hs_bindgen_72a0293b5643dd24 :: + 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: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_72a0293b5643dd24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_fb8e10426231bed3" hs_bindgen_fb8e10426231bed3 :: + 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: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_fb8e10426231bed3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_745b03fff92f32e9" hs_bindgen_745b03fff92f32e9 :: + 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: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_745b03fff92f32e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_7a1ed155fb967f87" hs_bindgen_7a1ed155fb967f87 :: + 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: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_7a1ed155fb967f87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_1b9dd03f7e20f6e7" hs_bindgen_1b9dd03f7e20f6e7 :: + 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:1256: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_1b9dd03f7e20f6e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_4e24134f28214ada" hs_bindgen_4e24134f28214ada :: + 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:1258: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_4e24134f28214ada + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_09f995c113967692" hs_bindgen_09f995c113967692 :: + 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:1260: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_09f995c113967692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_231878a792b9b460" hs_bindgen_231878a792b9b460 :: + 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:1265: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_231878a792b9b460 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_e9c1ff3821de5dd4" hs_bindgen_e9c1ff3821de5dd4 :: + 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:1270: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_e9c1ff3821de5dd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_162b180acd9e9d02" hs_bindgen_162b180acd9e9d02 :: + 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:1272: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_162b180acd9e9d02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_e2c681e4bfe975c4" hs_bindgen_e2c681e4bfe975c4 :: + 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:1277: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_e2c681e4bfe975c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_7353c2c86529b90e" hs_bindgen_7353c2c86529b90e :: + 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:1279: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_7353c2c86529b90e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_9d53dc5220e2f15a" hs_bindgen_9d53dc5220e2f15a :: + 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:1282: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_9d53dc5220e2f15a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_0cfdd7aa82962250" hs_bindgen_0cfdd7aa82962250 :: + 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:1287: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_0cfdd7aa82962250 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_90042c6e0856e014" hs_bindgen_90042c6e0856e014 :: + 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:1292: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_90042c6e0856e014 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_767676a3d4dca5a5" hs_bindgen_767676a3d4dca5a5 :: + 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:1294: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_767676a3d4dca5a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_500ce90dc2bec1d3" hs_bindgen_500ce90dc2bec1d3 :: + 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:1299: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_500ce90dc2bec1d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_28097592bf53dbb6" hs_bindgen_28097592bf53dbb6 :: + 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:1301: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_28097592bf53dbb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_d316910b2c7cae95" hs_bindgen_d316910b2c7cae95 :: + 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:1304: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_d316910b2c7cae95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_0ac4d379f94378ea" hs_bindgen_0ac4d379f94378ea :: + 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:1306: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_0ac4d379f94378ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_47b094487c4ec416" hs_bindgen_47b094487c4ec416 :: + 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:1308: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_47b094487c4ec416 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_7bb70b8d00cc32ba" hs_bindgen_7bb70b8d00cc32ba :: + 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:1310: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_7bb70b8d00cc32ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_6e4175151421bdd3" hs_bindgen_6e4175151421bdd3 :: + 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:1312: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_6e4175151421bdd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_2317f32ab1c329db" hs_bindgen_2317f32ab1c329db :: + 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:1315: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_2317f32ab1c329db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_40061cbcca15f97c" hs_bindgen_40061cbcca15f97c :: + 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:1317: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_40061cbcca15f97c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_c79204f3c4112e02" hs_bindgen_c79204f3c4112e02 :: + 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:1320: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_c79204f3c4112e02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_eab5a1f823e865ec" hs_bindgen_eab5a1f823e865ec :: + 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:1322: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_eab5a1f823e865ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_3957988cf2fcb0a4" hs_bindgen_3957988cf2fcb0a4 :: + 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:1328: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_3957988cf2fcb0a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_0d5f464fa30df61d" hs_bindgen_0d5f464fa30df61d :: + 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:1331: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_0d5f464fa30df61d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_223ed332f3eb52c6" hs_bindgen_223ed332f3eb52c6 :: + 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:1334: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_223ed332f3eb52c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_fa20c129a5617fbc" hs_bindgen_fa20c129a5617fbc :: + 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:1337: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_fa20c129a5617fbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_50442c12c03f0f48" hs_bindgen_50442c12c03f0f48 :: + 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:1339: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_50442c12c03f0f48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_60fa4359ebef2770" hs_bindgen_60fa4359ebef2770 :: + 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:1341: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_60fa4359ebef2770 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_1d3bfd0203141e04" hs_bindgen_1d3bfd0203141e04 :: + 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:1343: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_1d3bfd0203141e04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_7d6615f2d9bf72f9" hs_bindgen_7d6615f2d9bf72f9 :: + 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:1358: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_7d6615f2d9bf72f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_db50505d1828d515" hs_bindgen_db50505d1828d515 :: + 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:1372: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_db50505d1828d515 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_e0f4f0c62b39ab38" hs_bindgen_e0f4f0c62b39ab38 :: + 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:1390: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_e0f4f0c62b39ab38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_c85b385f8a4cb3e5" hs_bindgen_c85b385f8a4cb3e5 :: + 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:1405: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_c85b385f8a4cb3e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_d9d80f94ee817a1a" hs_bindgen_d9d80f94ee817a1a :: + 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:1411: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_d9d80f94ee817a1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_44991af56da221d0" hs_bindgen_44991af56da221d0 :: + 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:1413: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_44991af56da221d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_ce3732e516ab2911" hs_bindgen_ce3732e516ab2911 :: + 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:1415: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_ce3732e516ab2911 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_753c9b2a6c0cd4ff" hs_bindgen_753c9b2a6c0cd4ff :: + 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:1417: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_753c9b2a6c0cd4ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_a4eaf54ba1a59830" hs_bindgen_a4eaf54ba1a59830 :: + 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:1423: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_a4eaf54ba1a59830 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_4897f4051d0dfe76" hs_bindgen_4897f4051d0dfe76 :: + 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:1425: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_4897f4051d0dfe76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_ed6d117b49346888" hs_bindgen_ed6d117b49346888 :: + 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:1427: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_ed6d117b49346888 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_6510436207d67214" hs_bindgen_6510436207d67214 :: + 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:1429: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_6510436207d67214 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_d7fefeb6c55b255d" hs_bindgen_d7fefeb6c55b255d :: + 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:1435: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_d7fefeb6c55b255d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_1f5bc8e8fe001a82" hs_bindgen_1f5bc8e8fe001a82 :: + 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:1437: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_1f5bc8e8fe001a82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_efb059d8b38945a8" hs_bindgen_efb059d8b38945a8 :: + 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:1440: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_efb059d8b38945a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_acf60abbc72ae27d" hs_bindgen_acf60abbc72ae27d :: + 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:1443: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_acf60abbc72ae27d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_d204c9596897e693" hs_bindgen_d204c9596897e693 :: + 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:1449: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_d204c9596897e693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2435851e0432a259" hs_bindgen_2435851e0432a259 :: + 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:1452: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_2435851e0432a259 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_b8811c2559a66ff6" hs_bindgen_b8811c2559a66ff6 :: + 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:1455: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_b8811c2559a66ff6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_8ff07419b4abc63c" hs_bindgen_8ff07419b4abc63c :: + 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:1458: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_8ff07419b4abc63c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_b29cb64fa0473393" hs_bindgen_b29cb64fa0473393 :: + 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:1461: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_b29cb64fa0473393 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_2edf32d18fe35429" hs_bindgen_2edf32d18fe35429 :: + 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:1464: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_2edf32d18fe35429 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_256a4efe3f972f35" hs_bindgen_256a4efe3f972f35 :: + 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:1467: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_256a4efe3f972f35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_6aa58e40aae2ca33" hs_bindgen_6aa58e40aae2ca33 :: + 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:1471: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_6aa58e40aae2ca33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_73dd7ee1973d4816" hs_bindgen_73dd7ee1973d4816 :: + 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:1475: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_73dd7ee1973d4816 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_7909bb967742ccba" hs_bindgen_7909bb967742ccba :: + 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:1478: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_7909bb967742ccba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_ee9f97fa398afb7b" hs_bindgen_ee9f97fa398afb7b :: + 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:1485: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_ee9f97fa398afb7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_bb5261c250d9937d" hs_bindgen_bb5261c250d9937d :: + 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:1493: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_bb5261c250d9937d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_c3b8fcd38f69c2f8" hs_bindgen_c3b8fcd38f69c2f8 :: + 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:1498: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_c3b8fcd38f69c2f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_3d8312e2d225a298" hs_bindgen_3d8312e2d225a298 :: + 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:1501: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_3d8312e2d225a298 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_0c1968f07f63c5d6" hs_bindgen_0c1968f07f63c5d6 :: + 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:1504: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_0c1968f07f63c5d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_b585b915cc7a6491" hs_bindgen_b585b915cc7a6491 :: + 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:1517: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_b585b915cc7a6491 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_4e47600a57395655" hs_bindgen_4e47600a57395655 :: + 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:1522: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_4e47600a57395655 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_13677c24c493161a" hs_bindgen_13677c24c493161a :: + 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:1525: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_13677c24c493161a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_db798203b68262b9" hs_bindgen_db798203b68262b9 :: + 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:1528: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_db798203b68262b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_83a013240bc83a8e" hs_bindgen_83a013240bc83a8e :: + 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:1540: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_83a013240bc83a8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_def6375257bfa8f9" hs_bindgen_def6375257bfa8f9 :: + 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:1545: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_def6375257bfa8f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_01a1bf8ecf4f1669" hs_bindgen_01a1bf8ecf4f1669 :: + 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:1547: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_01a1bf8ecf4f1669 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_84f080ff4e20f9b4" hs_bindgen_84f080ff4e20f9b4 :: + 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:1549: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_84f080ff4e20f9b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_b546c645efdafe30" hs_bindgen_b546c645efdafe30 :: + 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:1552: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_b546c645efdafe30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_79275b36076ca111" hs_bindgen_79275b36076ca111 :: + 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:1560: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_79275b36076ca111 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_0badb7ed7160de94" hs_bindgen_0badb7ed7160de94 :: + 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:1568: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_0badb7ed7160de94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_b2443e3c489aab74" hs_bindgen_b2443e3c489aab74 :: + 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:1570: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_b2443e3c489aab74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_f7cc30598d18bd05" hs_bindgen_f7cc30598d18bd05 :: + 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:1571: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_f7cc30598d18bd05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_4913fc6b2e9f2753" hs_bindgen_4913fc6b2e9f2753 :: + 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:1579: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_4913fc6b2e9f2753 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_2b63c4a1117f5058" hs_bindgen_2b63c4a1117f5058 :: + 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:1584: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_2b63c4a1117f5058 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_b795b03bcbc7ee6a" hs_bindgen_b795b03bcbc7ee6a :: + 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:1586: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_b795b03bcbc7ee6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_8f011a2f10fac1b5" hs_bindgen_8f011a2f10fac1b5 :: + 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:1589: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_8f011a2f10fac1b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_ed445c689f1a0545" hs_bindgen_ed445c689f1a0545 :: + 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:1591: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_ed445c689f1a0545 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_e3d21a5a6cfd946c" hs_bindgen_e3d21a5a6cfd946c :: + 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:1594: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_e3d21a5a6cfd946c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_afddc01dc72f671f" hs_bindgen_afddc01dc72f671f :: + 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:1608: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_afddc01dc72f671f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ee9b5d3ccf486fc4" hs_bindgen_ee9b5d3ccf486fc4 :: + 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:1613: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_ee9b5d3ccf486fc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_c910970a836dfd86" hs_bindgen_c910970a836dfd86 :: + 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:1616: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_c910970a836dfd86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_82bbc7bfb5d3c202" hs_bindgen_82bbc7bfb5d3c202 :: + 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:1621: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_82bbc7bfb5d3c202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_44fa65c78a8152b1" hs_bindgen_44fa65c78a8152b1 :: + 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:1625: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_44fa65c78a8152b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_97845b7db3d605f3" hs_bindgen_97845b7db3d605f3 :: + 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:1638: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_97845b7db3d605f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_04eb79f36fe0b092" hs_bindgen_04eb79f36fe0b092 :: + 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:1643: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_04eb79f36fe0b092 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_31f7ddbacafaced3" hs_bindgen_31f7ddbacafaced3 :: + 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:1646: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_31f7ddbacafaced3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_05221b9910d3a2e5" hs_bindgen_05221b9910d3a2e5 :: + 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:1651: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_05221b9910d3a2e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_69f898e749d0ef68" hs_bindgen_69f898e749d0ef68 :: + 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:1664: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_69f898e749d0ef68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_04b3435f65eb9b4f" hs_bindgen_04b3435f65eb9b4f :: + 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:1671: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_04b3435f65eb9b4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_0052da4662f28be3" hs_bindgen_0052da4662f28be3 :: + 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:1686: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_0052da4662f28be3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_0581b94430bf4e17" hs_bindgen_0581b94430bf4e17 :: + 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:1701: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_0581b94430bf4e17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_0d4d4a47ac669f64" hs_bindgen_0d4d4a47ac669f64 :: + 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:1702: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_0d4d4a47ac669f64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_b699939e688c2adc" hs_bindgen_b699939e688c2adc :: + 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:1707: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_b699939e688c2adc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_6f1e36ac118d0a68" hs_bindgen_6f1e36ac118d0a68 :: + 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:1709: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_6f1e36ac118d0a68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_2a663bfaa8d68091" hs_bindgen_2a663bfaa8d68091 :: + 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:1712: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_2a663bfaa8d68091 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_b3e3a68f4e74ed35" hs_bindgen_b3e3a68f4e74ed35 :: + 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:1713: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_b3e3a68f4e74ed35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_59685468c82993b0" hs_bindgen_59685468c82993b0 :: + 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:1715: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_59685468c82993b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_731be0d37af2c52d" hs_bindgen_731be0d37af2c52d :: + 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:1716: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_731be0d37af2c52d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_bf60fd6457d62b3a" hs_bindgen_bf60fd6457d62b3a :: + 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:1719: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_bf60fd6457d62b3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_c24e35bc4d953ebf" hs_bindgen_c24e35bc4d953ebf :: + 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:1721: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_c24e35bc4d953ebf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_a781cdec7933ef7d" hs_bindgen_a781cdec7933ef7d :: + 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:1722: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_a781cdec7933ef7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_f7afb8d8e6f34a13" hs_bindgen_f7afb8d8e6f34a13 :: + 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:1723: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_f7afb8d8e6f34a13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_8b1fb7abb8c462a7" hs_bindgen_8b1fb7abb8c462a7 :: + 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:1725: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_8b1fb7abb8c462a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_7577f6a2bd81762e" hs_bindgen_7577f6a2bd81762e :: + 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:1728: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_7577f6a2bd81762e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_71daff9438962f74" hs_bindgen_71daff9438962f74 :: + 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:1730: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_71daff9438962f74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_c48c6f3ebeec6086" hs_bindgen_c48c6f3ebeec6086 :: + 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:1733: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_c48c6f3ebeec6086 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_c2ddfa118fe246e0" hs_bindgen_c2ddfa118fe246e0 :: + 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:1737: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_c2ddfa118fe246e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_0c72be011d27829c" hs_bindgen_0c72be011d27829c :: + 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:1740: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_0c72be011d27829c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_31f964ca178f2ca9" hs_bindgen_31f964ca178f2ca9 :: + 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:1743: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_31f964ca178f2ca9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_007337fd944a29b1" hs_bindgen_007337fd944a29b1 :: + 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:1759: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_007337fd944a29b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_bee0f14a30e160ae" hs_bindgen_bee0f14a30e160ae :: + 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:1765: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_bee0f14a30e160ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_3e9bcf795d762ddd" hs_bindgen_3e9bcf795d762ddd :: + 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:1776: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_3e9bcf795d762ddd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_6520e5253f878349" hs_bindgen_6520e5253f878349 :: + 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:1791: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_6520e5253f878349 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_f1be6864a7c1f88a" hs_bindgen_f1be6864a7c1f88a :: + 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:1799: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_f1be6864a7c1f88a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_ce8fe9e1c693b486" hs_bindgen_ce8fe9e1c693b486 :: + 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:1801: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_ce8fe9e1c693b486 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_7c8cf4312198545f" hs_bindgen_7c8cf4312198545f :: + 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:1803: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_7c8cf4312198545f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_1be4101a923c5b29" hs_bindgen_1be4101a923c5b29 :: + 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:1809: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_1be4101a923c5b29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_81d851608e284aaf" hs_bindgen_81d851608e284aaf :: + 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:1816: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_81d851608e284aaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_5c721999c6aed69a" hs_bindgen_5c721999c6aed69a :: + 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:1834: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_5c721999c6aed69a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_43ccfd46201fb03b" hs_bindgen_43ccfd46201fb03b :: + 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:1843: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_43ccfd46201fb03b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_49778c4f42337f3b" hs_bindgen_49778c4f42337f3b :: + 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:1851: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_49778c4f42337f3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_5814e6482f764b97" hs_bindgen_5814e6482f764b97 :: + 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:1861: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_5814e6482f764b97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_5e6f77e3418699d0" hs_bindgen_5e6f77e3418699d0 :: + 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:1880: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_5e6f77e3418699d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_f5db02cf9206864e" hs_bindgen_f5db02cf9206864e :: + 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:1887: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_f5db02cf9206864e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_3783e6b5bfe7b818" hs_bindgen_3783e6b5bfe7b818 :: + 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:1893: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_3783e6b5bfe7b818 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_41b93e6af035c92c" hs_bindgen_41b93e6af035c92c :: + 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:1899: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_41b93e6af035c92c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_c4de916b4b2057f2" hs_bindgen_c4de916b4b2057f2 :: + 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:1912: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_c4de916b4b2057f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_88c2ac0d5682f743" hs_bindgen_88c2ac0d5682f743 :: + 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:1920: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_88c2ac0d5682f743 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_8caedc7b6d28a984" hs_bindgen_8caedc7b6d28a984 :: + 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:1929: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_8caedc7b6d28a984 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_00cabd8163ae5e49" hs_bindgen_00cabd8163ae5e49 :: + 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:1940: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_00cabd8163ae5e49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_84e9226a5327ea7a" hs_bindgen_84e9226a5327ea7a :: + 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:1951: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_84e9226a5327ea7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_ad7e44f6dfe76475" hs_bindgen_ad7e44f6dfe76475 :: + 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:1958: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_ad7e44f6dfe76475 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_d0d267681c6a4c2b" hs_bindgen_d0d267681c6a4c2b :: + 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:1961: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_d0d267681c6a4c2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_a1dc36b89d3555e1" hs_bindgen_a1dc36b89d3555e1 :: + 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:1964: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_a1dc36b89d3555e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_a7d8a35caf4d81e8" hs_bindgen_a7d8a35caf4d81e8 :: + 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:1976: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_a7d8a35caf4d81e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_ef6506d594354341" hs_bindgen_ef6506d594354341 :: + 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:1984: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_ef6506d594354341 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_8945e776e044c615" hs_bindgen_8945e776e044c615 :: + 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:1999: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_8945e776e044c615 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_fefd1bb2dcea3ef4" hs_bindgen_fefd1bb2dcea3ef4 :: + 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:2018: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_fefd1bb2dcea3ef4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_67e99a8d6e33d716" hs_bindgen_67e99a8d6e33d716 :: + 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:2034: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_67e99a8d6e33d716 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_f35582e9dca08e35" hs_bindgen_f35582e9dca08e35 :: + 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:2061: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_f35582e9dca08e35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_21dfd7e3965e3ca5" hs_bindgen_21dfd7e3965e3ca5 :: + 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:2079: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_21dfd7e3965e3ca5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_68dc9edf4c1bb3ea" hs_bindgen_68dc9edf4c1bb3ea :: + 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:2100: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_68dc9edf4c1bb3ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_a352d707cd27283f" hs_bindgen_a352d707cd27283f :: + 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:2121: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_a352d707cd27283f diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/Safe.hs new file mode 100644 index 00000000..c89fe4d8 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/Safe.hs @@ -0,0 +1,12267 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_2_0.Safe where + +import Botan.Bindings.Generated.Botan_3_2_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_10509b9fa339561a (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_7ff5b1eb94f15315 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_b99a7185abd3e3d7 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_b8b4db7b6e0ecbfc (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_cfe3bc3f41d4a677 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_afffbe843b635e3d (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_f1a1c39b0465093b (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_a16720ded604a7a8 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_a728bc0b7536157d (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_c411de526a5969ac (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ee1bf7e5c3f88341 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4d18704247b2f9ab (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dd9a92d9390e83cc (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3eced03f12caccb2 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_fece5d73f8520b48 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_34551c853cc1c3e9 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_458ff95e99421383 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2ce71cdbfb8daac1 (" + , " 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_b50b5d2d7b7a30d8 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_de4395fa1ee5796f (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_849ffb5f9a3cd533 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cbb7cc86b9c6830a (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_159d5301e3761d6f (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cf60f360303648d8 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a2d13d561395f8d0 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5651f2d686a8476 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f76a0e9f0fca7a85 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de8611358f0fc143 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d5a32953a3b77feb (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_24a4ff73b6feabf2 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3845750cbf195530 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_1a4d04ced5c2f235 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cde7aea7b228761c (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3cc250f6dfed3dd7 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fbfbad344635cd1a (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d19445224003159d (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1a4a61bb482703e9 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8c91e524a1ebcd54 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ddb505794a4e107d (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_931b48e40a47921d (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_30017ccfa6f4167a (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5b1a5e237c02d06 (" + , " 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_4a534e7fd5ff6818 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_43c3f10655c17483 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7eded583b5702159 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3f7ce80c12310638 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5750aa5d0bc596cc (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6fa570c7f90d23ec (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c44f6039e8a7a734 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0b69e57af4280524 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5d53591490b5046f (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e7b5cd2afc586a58 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f63473fbc71ce05 (" + , " 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_2130a541bdf7766e (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7b18785021cb4fb (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_1ef4b10411ef463e (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7e3ad9343eac268 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fb4ef89249b704fb (" + , " 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_8da24e2f53be5462 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_6a8f771ba63cc112 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e8ba9abba578ca85 (" + , " 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_3e59eb442853edb9 (" + , " 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_9bd697b31ae66b4f (" + , " 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_fcf3cbc28403cedd (" + , " 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_ae389236b44e32fe (" + , " 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_134d93833ad4bb42 (" + , " 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_adcadb96bc66bc42 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5794660d486cc9ef (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2dbd287ff1029174 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_d5e46068a5289698 (" + , " 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_6278c6116b020f7e (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_c3496c31bc5b180b (" + , " 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_9502e575e5c14ceb (" + , " 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_3f1ca17701b46745 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_72ef8d522256cc62 (" + , " 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_302ed2db01a9c848 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_55586d1820581eb2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0e660c820e5256fb (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6cf60e5570f737da (" + , " 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_ac67b681fff19326 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_49c4bb34f948af10 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7b65546d24abdd2e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eb3ddc599b1ca06e (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_340f71632ffb67f6 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5fad7d13afa692c (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_224011daba44b355 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e446651fcdc515a (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ce9c3c8c94649aa (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_03f5194c2494c406 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5a26211b95ed775a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_6286573f3cec3369 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_877a25867380761f (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_3accabd4e97a2312 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_0aec2baceb3b3b6b (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_ee182fa1b4cfbb94 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_25a6a4d6e76f1668 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3ae80723e2e0f87f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a04fec97d606302c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42bfbbe20a834866 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7fd2a7803d67fefd (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_85478941b62d3767 (" + , " 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_a884faf2dd2a12f2 (" + , " 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_fa226e44c32263f4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b9848a078f4ee87e (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_626bbfd68d126002 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_382fd370b1646d4c (" + , " 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_6d108a901ae05b59 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d40e549c9d174e37 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3b01e9164ff7a6cf (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b5e4ab1349101336 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cf7a2156dd01e743 (" + , " 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_1431f6de06e43c1b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_da94547bc6a98376 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3f66e4436b1032e2 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3caadad461e0fecc (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dd33e3750d43dad7 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_057cdfdfabe3c0ae (" + , " 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_3b32177288802e49 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_28c79b92ba7638dd (" + , " 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_496a3917d73d765c (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6ceabe9e09d67648 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6271ccded4cac62d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2cc75e0667862d6d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_02ce123d7590b234 (" + , " 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_586072b3c4702bf8 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_25f7c5cd684b0774 (" + , " 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_741df4e07d926837 (" + , " 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_2c4e163e91e006f3 (" + , " 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_57f51606a6ea1111 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_edfc87e2c9ce1131 (" + , " 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_8a12ea8f057209bf (" + , " 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_b213be13801ba1a1 (" + , " 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_6e71d573c23c7cc5 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fb57f19096fb65e9 (" + , " 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_efd3c962a05c11be (" + , " 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_e11ea0517717f2cd (" + , " 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_6bc1ce9e255a3cc4 (" + , " 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_be4fcd5ea85d7726 (" + , " 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_ef736d0cf83355a2 (" + , " 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_6a10c4e5fa2ded57 (" + , " 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_0e2771da618a2c1c (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d53c86a39763bea1 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3aebbf24f49ba217 (" + , " 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_a9aaa1e7ffb8d33e (" + , " 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_21d1509645d40e42 (" + , " 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_413da6115b6c0866 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c6b350797f821d93 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a81c8d6a05461fc (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_996f78420dd600cb (" + , " 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_84c7a4446a9eaebb (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_21a035b565664532 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3019096357736b25 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ce50908906756b5 (" + , " 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_768ce3262835722d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9a33182a16dde1f8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b30396ce4eb82f7 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_51cb5bc912464db0 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f212e36dfcb39e92 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34dae9a6bd354d15 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e458ba8126d92c7 (" + , " 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_6411cf4757e0f83c (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5828cb4d54d9dec (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a85533a8da6b72a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c7d38ae678c91998 (" + , " 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_88b6c368c10bc80d (" + , " 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_7710f702068e2426 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6e6b72f810192dc4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34981d811552b13f (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c362b516558185bd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_672830328b8d2e5b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1688861b5861fe2 (" + , " 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_db30fad4061eb58b (" + , " 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_c2528bcc7cc76b00 (" + , " 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_887d282b1fd2ff9a (" + , " 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_188fea210dc6eced (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_49e4448827c1db2f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b540db8723f6a518 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a48f9e434208bb0 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a0361e2e5d3eb72d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9e9d7a854f3c2227 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0bafdb2974695c18 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_33cf0dbc7fb273f1 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_738c7b77f8b9f994 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_76501f32c86168a5 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2cc36412120beda7 (" + , " 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_08afcaefc9c726d6 (" + , " 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_0a0f8683b3d9ef60 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_4e852b26b52050f0 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b534f891bde72e48 (" + , " 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_028d09d378293be2 (" + , " 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_70f9a37c411bc1fb (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6af31cf633bdf8a6 (" + , " 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_7930dcb610810b87 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_63abe0b504520d0c (" + , " 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_fc217fe196f1a10c (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a59dea6eb1e2ea06 (" + , " 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_d9ccaee8d09915fd (" + , " 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_5e8dc94b5c756fe6 (" + , " 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_219b7ca0d34124d2 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0dd1906fcc1b5c3b (" + , " 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_d6776a444edeb006 (" + , " 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_fc1ec822dd0362f7 (" + , " 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_e898bb064fc0129e (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0146f5a5bf524093 (" + , " 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_03791086f292769b (" + , " 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_721fe896c4cd582c (" + , " 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_890a984b8b323d73 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_990e580c798e68a2 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ab0f5edb289a57fd (" + , " 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_4a0ee1563434c208 (" + , " 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_2c5c11953e14867b (" + , " 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_c46ba7894a838ce4 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9b839d64e4972f06 (" + , " 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_65bfb0809a49d5ca (" + , " 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_600da084289d1d56 (" + , " 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_730f147b8eebe10e (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_244e8ba6230ccfde (" + , " 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_9f56f260387d93eb (" + , " 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_0082a35f2018d766 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_42b27c104693c2d3 (" + , " 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_eda367670f5a62ab (" + , " 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_0769f25a02815b35 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1451d6832e6bac35 (" + , " 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_8d95ce370db5376c (" + , " 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_f2ca7802ae7e509b (" + , " 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_6cd2432ea0718deb (" + , " 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_2c1d67186b6580f1 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f631f0294a5dea37 (" + , " 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_d848668fd59a34b4 (" + , " 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_96c28ad4c84bc602 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8304e4e7945ed3ac (" + , " 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_405fd7ba8a4addf4 (" + , " 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_4439cd42d831b9d5 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ca9c4af85693247c (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dc2f5059f7161d5c (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0ace4a852ace3225 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7b5d256094b7e3bb (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f6e0a980bc17139 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1cbb75f05b5b6815 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0fdeae73aa9924b5 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fffe5d2a375f6687 (" + , " 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_10f1ea93d6c950f2 (" + , " 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_d10cf2c66dbda980 (" + , " 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_165bf1277115307c (" + , " 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_5d33f95f788af323 (" + , " 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_1f0d4e1da0c5e021 (" + , " 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_b25d19ce41360366 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3744706d821c038a (" + , " 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_b3e41c810187007f (" + , " 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_794608e301df0eae (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_679b0ea39389eaa9 (" + , " 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_21ff95c2fe917f3c (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fac9539236e0cf06 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7894bac2e317d15a (" + , " 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_eca253bd0f001aa4 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_595c0e25d63f4f70 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de4c8fd1dc7c8555 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f1cf46a1e114a0f (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6efb7abea973a42c (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f950cea14641d664 (" + , " 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_bcef9acb15d7cc1a (" + , " 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_99ed067240256b35 (" + , " 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_7260af656122d30e (" + , " 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_30bd9511c26e39d5 (" + , " 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_80a79399aa2476a2 (" + , " 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_074a4430fdd4d04f (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bf6a766181066442 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0b9d5a6036c73c90 (" + , " 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_7843a0044b57e692 (" + , " 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_9a8bcfdd68128828 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3033dfb443645b69 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f4352e99ba0ada1d (" + , " 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_13331bde1ae55956 (" + , " 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_0ae83977043019c7 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2f4577dd5f11e957 (" + , " 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_2c29f25cd67bf2a4 (" + , " 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_d811f2c0fdb27938 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_dd83bdb8659e47fd (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4d06ec4e4bb0241b (" + , " 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_90186c0dbf04fb70 (" + , " 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_cea1b60dc934b212 (" + , " 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_a6d4ffa274210ef4 (" + , " 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_40e317c3b925b7b9 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e0b4defb56fba08d (" + , " 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_7cd062f58c241284 (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_10509b9fa339561a" hs_bindgen_10509b9fa339561a :: + 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:144: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_10509b9fa339561a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_7ff5b1eb94f15315" hs_bindgen_7ff5b1eb94f15315 :: + 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:153: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_7ff5b1eb94f15315 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_b99a7185abd3e3d7" hs_bindgen_b99a7185abd3e3d7 :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_b99a7185abd3e3d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_b8b4db7b6e0ecbfc" hs_bindgen_b8b4db7b6e0ecbfc :: + 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:166: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_b8b4db7b6e0ecbfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_cfe3bc3f41d4a677" hs_bindgen_cfe3bc3f41d4a677 :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_cfe3bc3f41d4a677 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_afffbe843b635e3d" hs_bindgen_afffbe843b635e3d :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_afffbe843b635e3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_f1a1c39b0465093b" hs_bindgen_f1a1c39b0465093b :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_f1a1c39b0465093b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_a16720ded604a7a8" hs_bindgen_a16720ded604a7a8 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_a16720ded604a7a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_a728bc0b7536157d" hs_bindgen_a728bc0b7536157d :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_a728bc0b7536157d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_c411de526a5969ac" hs_bindgen_c411de526a5969ac :: + 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:197: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_c411de526a5969ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_ee1bf7e5c3f88341" hs_bindgen_ee1bf7e5c3f88341 :: + 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:203: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_ee1bf7e5c3f88341 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_4d18704247b2f9ab" hs_bindgen_4d18704247b2f9ab :: + 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:209: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_4d18704247b2f9ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_dd9a92d9390e83cc" hs_bindgen_dd9a92d9390e83cc :: + 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:221: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_dd9a92d9390e83cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_3eced03f12caccb2" hs_bindgen_3eced03f12caccb2 :: + 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:231: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_3eced03f12caccb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_fece5d73f8520b48" hs_bindgen_fece5d73f8520b48 :: + 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:236:28@ + +__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_fece5d73f8520b48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_34551c853cc1c3e9" hs_bindgen_34551c853cc1c3e9 :: + 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:241: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_34551c853cc1c3e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_458ff95e99421383" hs_bindgen_458ff95e99421383 :: + 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:258: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 "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_458ff95e99421383 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_2ce71cdbfb8daac1" hs_bindgen_2ce71cdbfb8daac1 :: + 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:270: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_2ce71cdbfb8daac1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_b50b5d2d7b7a30d8" hs_bindgen_b50b5d2d7b7a30d8 :: + 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:284: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_b50b5d2d7b7a30d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_de4395fa1ee5796f" hs_bindgen_de4395fa1ee5796f :: + 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:292: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_de4395fa1ee5796f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_849ffb5f9a3cd533" hs_bindgen_849ffb5f9a3cd533 :: + 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:302: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_849ffb5f9a3cd533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_cbb7cc86b9c6830a" hs_bindgen_cbb7cc86b9c6830a :: + 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:312: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_cbb7cc86b9c6830a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_159d5301e3761d6f" hs_bindgen_159d5301e3761d6f :: + 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:322: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_159d5301e3761d6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_cf60f360303648d8" hs_bindgen_cf60f360303648d8 :: + 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:329: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_cf60f360303648d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_a2d13d561395f8d0" hs_bindgen_a2d13d561395f8d0 :: + 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:343: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_a2d13d561395f8d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_f5651f2d686a8476" hs_bindgen_f5651f2d686a8476 :: + 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:351: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_f5651f2d686a8476 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_f76a0e9f0fca7a85" hs_bindgen_f76a0e9f0fca7a85 :: + 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:359: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_f76a0e9f0fca7a85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_de8611358f0fc143" hs_bindgen_de8611358f0fc143 :: + 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:367: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_de8611358f0fc143 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_d5a32953a3b77feb" hs_bindgen_d5a32953a3b77feb :: + 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:376: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_d5a32953a3b77feb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_24a4ff73b6feabf2" hs_bindgen_24a4ff73b6feabf2 :: + 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:386: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_24a4ff73b6feabf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_3845750cbf195530" hs_bindgen_3845750cbf195530 :: + 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:394: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_3845750cbf195530 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_1a4d04ced5c2f235" hs_bindgen_1a4d04ced5c2f235 :: + 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:401: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_1a4d04ced5c2f235 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_cde7aea7b228761c" hs_bindgen_cde7aea7b228761c :: + 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:409: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_cde7aea7b228761c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_3cc250f6dfed3dd7" hs_bindgen_3cc250f6dfed3dd7 :: + 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:424: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_3cc250f6dfed3dd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_fbfbad344635cd1a" hs_bindgen_fbfbad344635cd1a :: + 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:432: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_fbfbad344635cd1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_d19445224003159d" hs_bindgen_d19445224003159d :: + 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:441: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_d19445224003159d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_1a4a61bb482703e9" hs_bindgen_1a4a61bb482703e9 :: + 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:450: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_1a4a61bb482703e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_8c91e524a1ebcd54" hs_bindgen_8c91e524a1ebcd54 :: + 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:459: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_8c91e524a1ebcd54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_ddb505794a4e107d" hs_bindgen_ddb505794a4e107d :: + 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:469: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_ddb505794a4e107d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_931b48e40a47921d" hs_bindgen_931b48e40a47921d :: + 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:477: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_931b48e40a47921d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_30017ccfa6f4167a" hs_bindgen_30017ccfa6f4167a :: + 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:485: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_30017ccfa6f4167a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_e5b1a5e237c02d06" hs_bindgen_e5b1a5e237c02d06 :: + 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:495: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_e5b1a5e237c02d06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_4a534e7fd5ff6818" hs_bindgen_4a534e7fd5ff6818 :: + 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:505: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_4a534e7fd5ff6818 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_43c3f10655c17483" hs_bindgen_43c3f10655c17483 :: + 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:519: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_43c3f10655c17483 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_7eded583b5702159" hs_bindgen_7eded583b5702159 :: + 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:524: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_7eded583b5702159 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_3f7ce80c12310638" hs_bindgen_3f7ce80c12310638 :: + 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:529: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_3f7ce80c12310638 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_5750aa5d0bc596cc" hs_bindgen_5750aa5d0bc596cc :: + 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:534: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_5750aa5d0bc596cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_6fa570c7f90d23ec" hs_bindgen_6fa570c7f90d23ec :: + 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:539: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_6fa570c7f90d23ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_c44f6039e8a7a734" hs_bindgen_c44f6039e8a7a734 :: + 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:544: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_c44f6039e8a7a734 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_0b69e57af4280524" hs_bindgen_0b69e57af4280524 :: + 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:550: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_0b69e57af4280524 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_5d53591490b5046f" hs_bindgen_5d53591490b5046f :: + 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:556: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_5d53591490b5046f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_e7b5cd2afc586a58" hs_bindgen_e7b5cd2afc586a58 :: + 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:562:5@ + +__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_e7b5cd2afc586a58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_7f63473fbc71ce05" hs_bindgen_7f63473fbc71ce05 :: + 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:568:5@ + +__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_7f63473fbc71ce05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_2130a541bdf7766e" hs_bindgen_2130a541bdf7766e :: + 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:573: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_2130a541bdf7766e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_c7b18785021cb4fb" hs_bindgen_c7b18785021cb4fb :: + 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:583:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_c7b18785021cb4fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_1ef4b10411ef463e" hs_bindgen_1ef4b10411ef463e :: + 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:588: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_1ef4b10411ef463e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_c7e3ad9343eac268" hs_bindgen_c7e3ad9343eac268 :: + 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:593: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_c7e3ad9343eac268 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_fb4ef89249b704fb" hs_bindgen_fb4ef89249b704fb :: + 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_fb4ef89249b704fb + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:601: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_fb4ef89249b704fb x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_8da24e2f53be5462" hs_bindgen_8da24e2f53be5462 :: + 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:613:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_8da24e2f53be5462 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_6a8f771ba63cc112" hs_bindgen_6a8f771ba63cc112 :: + 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:619:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_6a8f771ba63cc112 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_e8ba9abba578ca85" hs_bindgen_e8ba9abba578ca85 :: + 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_e8ba9abba578ca85 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:638: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_e8ba9abba578ca85 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_3e59eb442853edb9" hs_bindgen_3e59eb442853edb9 :: + 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_3e59eb442853edb9 + +{-| 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:671: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_3e59eb442853edb9 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_9bd697b31ae66b4f" hs_bindgen_9bd697b31ae66b4f :: + 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_9bd697b31ae66b4f + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:695: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_9bd697b31ae66b4f x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_fcf3cbc28403cedd" hs_bindgen_fcf3cbc28403cedd :: + 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_fcf3cbc28403cedd + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:722: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_fcf3cbc28403cedd x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_ae389236b44e32fe" hs_bindgen_ae389236b44e32fe :: + 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_ae389236b44e32fe + +{-| 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:741: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_ae389236b44e32fe x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_134d93833ad4bb42" hs_bindgen_134d93833ad4bb42 :: + 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_134d93833ad4bb42 + +{-| 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:764: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_134d93833ad4bb42 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_2_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_adcadb96bc66bc42" hs_bindgen_adcadb96bc66bc42 :: + 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:782: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_adcadb96bc66bc42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_5794660d486cc9ef" hs_bindgen_5794660d486cc9ef :: + 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:788: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_5794660d486cc9ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_2dbd287ff1029174" hs_bindgen_2dbd287ff1029174 :: + 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:794: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_2dbd287ff1029174 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_d5e46068a5289698" hs_bindgen_d5e46068a5289698 :: + 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_d5e46068a5289698 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:799: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_d5e46068a5289698 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_6278c6116b020f7e" hs_bindgen_6278c6116b020f7e :: + 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:805: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_6278c6116b020f7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_c3496c31bc5b180b" hs_bindgen_c3496c31bc5b180b :: + 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_c3496c31bc5b180b + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:811: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_c3496c31bc5b180b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_9502e575e5c14ceb" hs_bindgen_9502e575e5c14ceb :: + 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_9502e575e5c14ceb + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:817: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_9502e575e5c14ceb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_3f1ca17701b46745" hs_bindgen_3f1ca17701b46745 :: + 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:825: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_3f1ca17701b46745 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_72ef8d522256cc62" hs_bindgen_72ef8d522256cc62 :: + 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:835: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_72ef8d522256cc62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_302ed2db01a9c848" hs_bindgen_302ed2db01a9c848 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:848: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_302ed2db01a9c848 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_55586d1820581eb2" hs_bindgen_55586d1820581eb2 :: + 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:854:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_55586d1820581eb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_0e660c820e5256fb" hs_bindgen_0e660c820e5256fb :: + 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:859: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_0e660c820e5256fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_6cf60e5570f737da" hs_bindgen_6cf60e5570f737da :: + 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:864:28@ + +__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_6cf60e5570f737da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_ac67b681fff19326" hs_bindgen_ac67b681fff19326 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:869:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_ac67b681fff19326 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_49c4bb34f948af10" hs_bindgen_49c4bb34f948af10 :: + 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:874: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_49c4bb34f948af10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_7b65546d24abdd2e" hs_bindgen_7b65546d24abdd2e :: + 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:879: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_7b65546d24abdd2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_eb3ddc599b1ca06e" hs_bindgen_eb3ddc599b1ca06e :: + 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:884: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_eb3ddc599b1ca06e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_340f71632ffb67f6" hs_bindgen_340f71632ffb67f6 :: + 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:890: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_340f71632ffb67f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_e5fad7d13afa692c" hs_bindgen_e5fad7d13afa692c :: + 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:895: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_e5fad7d13afa692c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_224011daba44b355" hs_bindgen_224011daba44b355 :: + 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:900: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_224011daba44b355 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_3e446651fcdc515a" hs_bindgen_3e446651fcdc515a :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:905: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_3e446651fcdc515a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_8ce9c3c8c94649aa" hs_bindgen_8ce9c3c8c94649aa :: + 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_8ce9c3c8c94649aa + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:910: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_8ce9c3c8c94649aa x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_03f5194c2494c406" hs_bindgen_03f5194c2494c406 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:915: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_03f5194c2494c406 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_5a26211b95ed775a" hs_bindgen_5a26211b95ed775a :: + 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:922: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_5a26211b95ed775a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_6286573f3cec3369" hs_bindgen_6286573f3cec3369 :: + 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:927: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_6286573f3cec3369 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_877a25867380761f" hs_bindgen_877a25867380761f :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:929: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_877a25867380761f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_3accabd4e97a2312" hs_bindgen_3accabd4e97a2312 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:931: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_3accabd4e97a2312 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_0aec2baceb3b3b6b" hs_bindgen_0aec2baceb3b3b6b :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:933: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_0aec2baceb3b3b6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_ee182fa1b4cfbb94" hs_bindgen_ee182fa1b4cfbb94 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:934: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_ee182fa1b4cfbb94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_25a6a4d6e76f1668" hs_bindgen_25a6a4d6e76f1668 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:936: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_25a6a4d6e76f1668 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_3ae80723e2e0f87f" hs_bindgen_3ae80723e2e0f87f :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:937: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_3ae80723e2e0f87f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_a04fec97d606302c" hs_bindgen_a04fec97d606302c :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:939: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_a04fec97d606302c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_42bfbbe20a834866" hs_bindgen_42bfbbe20a834866 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:940: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_42bfbbe20a834866 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_7fd2a7803d67fefd" hs_bindgen_7fd2a7803d67fefd :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:941: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_7fd2a7803d67fefd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_85478941b62d3767" hs_bindgen_85478941b62d3767 :: + 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:944: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_85478941b62d3767 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_a884faf2dd2a12f2" hs_bindgen_a884faf2dd2a12f2 :: + 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:947: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_a884faf2dd2a12f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_fa226e44c32263f4" hs_bindgen_fa226e44c32263f4 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:954: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_fa226e44c32263f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_b9848a078f4ee87e" hs_bindgen_b9848a078f4ee87e :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:961: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_b9848a078f4ee87e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_626bbfd68d126002" hs_bindgen_626bbfd68d126002 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:966: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_626bbfd68d126002 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_382fd370b1646d4c" hs_bindgen_382fd370b1646d4c :: + 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:970: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_382fd370b1646d4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_6d108a901ae05b59" hs_bindgen_6d108a901ae05b59 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:972: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_6d108a901ae05b59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_d40e549c9d174e37" hs_bindgen_d40e549c9d174e37 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:973: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_d40e549c9d174e37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_3b01e9164ff7a6cf" hs_bindgen_3b01e9164ff7a6cf :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:975: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_3b01e9164ff7a6cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_b5e4ab1349101336" hs_bindgen_b5e4ab1349101336 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:977: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_b5e4ab1349101336 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_cf7a2156dd01e743" hs_bindgen_cf7a2156dd01e743 :: + 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:980: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_cf7a2156dd01e743 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_1431f6de06e43c1b" hs_bindgen_1431f6de06e43c1b :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:982: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_1431f6de06e43c1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_da94547bc6a98376" hs_bindgen_da94547bc6a98376 :: + 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:989: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_da94547bc6a98376 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_3f66e4436b1032e2" hs_bindgen_3f66e4436b1032e2 :: + 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:996: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_3f66e4436b1032e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_3caadad461e0fecc" hs_bindgen_3caadad461e0fecc :: + 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:1001: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_3caadad461e0fecc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_dd33e3750d43dad7" hs_bindgen_dd33e3750d43dad7 :: + 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:1006: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_dd33e3750d43dad7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_057cdfdfabe3c0ae" hs_bindgen_057cdfdfabe3c0ae :: + 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:1024: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_057cdfdfabe3c0ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_3b32177288802e49" hs_bindgen_3b32177288802e49 :: + 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:1035: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_3b32177288802e49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_28c79b92ba7638dd" hs_bindgen_28c79b92ba7638dd :: + 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:1051: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_28c79b92ba7638dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_496a3917d73d765c" hs_bindgen_496a3917d73d765c :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1055: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_496a3917d73d765c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_6ceabe9e09d67648" hs_bindgen_6ceabe9e09d67648 :: + 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:1058: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_6ceabe9e09d67648 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_6271ccded4cac62d" hs_bindgen_6271ccded4cac62d :: + 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:1060: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_6271ccded4cac62d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_2cc75e0667862d6d" hs_bindgen_2cc75e0667862d6d :: + 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:1062: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_2cc75e0667862d6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_02ce123d7590b234" hs_bindgen_02ce123d7590b234 :: + 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:1064: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_02ce123d7590b234 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_586072b3c4702bf8" hs_bindgen_586072b3c4702bf8 :: + 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:1066: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_586072b3c4702bf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_25f7c5cd684b0774" hs_bindgen_25f7c5cd684b0774 :: + 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:1086: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_25f7c5cd684b0774 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_741df4e07d926837" hs_bindgen_741df4e07d926837 :: + 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:1108: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_741df4e07d926837 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_2c4e163e91e006f3" hs_bindgen_2c4e163e91e006f3 :: + 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_2c4e163e91e006f3 + +{-| 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:1116: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_2c4e163e91e006f3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_57f51606a6ea1111" hs_bindgen_57f51606a6ea1111 :: + 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:1121:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_57f51606a6ea1111 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_edfc87e2c9ce1131" hs_bindgen_edfc87e2c9ce1131 :: + 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:1133: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_edfc87e2c9ce1131 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_8a12ea8f057209bf" hs_bindgen_8a12ea8f057209bf :: + 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:1138: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_8a12ea8f057209bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_b213be13801ba1a1" hs_bindgen_b213be13801ba1a1 :: + 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:1143: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_b213be13801ba1a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_6e71d573c23c7cc5" hs_bindgen_6e71d573c23c7cc5 :: + 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:1145: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_6e71d573c23c7cc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_fb57f19096fb65e9" hs_bindgen_fb57f19096fb65e9 :: + 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:1152: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_fb57f19096fb65e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_efd3c962a05c11be" hs_bindgen_efd3c962a05c11be :: + 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:1167: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_efd3c962a05c11be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_e11ea0517717f2cd" hs_bindgen_e11ea0517717f2cd :: + 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:1182: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_e11ea0517717f2cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_6bc1ce9e255a3cc4" hs_bindgen_6bc1ce9e255a3cc4 :: + 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: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_6bc1ce9e255a3cc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_be4fcd5ea85d7726" hs_bindgen_be4fcd5ea85d7726 :: + 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: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_be4fcd5ea85d7726 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_ef736d0cf83355a2" hs_bindgen_ef736d0cf83355a2 :: + 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: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_ef736d0cf83355a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_6a10c4e5fa2ded57" hs_bindgen_6a10c4e5fa2ded57 :: + 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: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_6a10c4e5fa2ded57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_0e2771da618a2c1c" hs_bindgen_0e2771da618a2c1c :: + 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_0e2771da618a2c1c + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1256: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_0e2771da618a2c1c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_d53c86a39763bea1" hs_bindgen_d53c86a39763bea1 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1258: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_d53c86a39763bea1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_3aebbf24f49ba217" hs_bindgen_3aebbf24f49ba217 :: + 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:1260: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_3aebbf24f49ba217 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_a9aaa1e7ffb8d33e" hs_bindgen_a9aaa1e7ffb8d33e :: + 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:1265: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_a9aaa1e7ffb8d33e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_21d1509645d40e42" hs_bindgen_21d1509645d40e42 :: + 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:1270: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_21d1509645d40e42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_413da6115b6c0866" hs_bindgen_413da6115b6c0866 :: + 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:1272: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_413da6115b6c0866 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_c6b350797f821d93" hs_bindgen_c6b350797f821d93 :: + 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:1277: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_c6b350797f821d93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_4a81c8d6a05461fc" hs_bindgen_4a81c8d6a05461fc :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1279: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_4a81c8d6a05461fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_996f78420dd600cb" hs_bindgen_996f78420dd600cb :: + 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:1282: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_996f78420dd600cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_84c7a4446a9eaebb" hs_bindgen_84c7a4446a9eaebb :: + 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:1287:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_84c7a4446a9eaebb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_21a035b565664532" hs_bindgen_21a035b565664532 :: + 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:1292: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_21a035b565664532 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_3019096357736b25" hs_bindgen_3019096357736b25 :: + 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:1294: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_3019096357736b25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_0ce50908906756b5" hs_bindgen_0ce50908906756b5 :: + 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:1299: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_0ce50908906756b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_768ce3262835722d" hs_bindgen_768ce3262835722d :: + 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_768ce3262835722d + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1301: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_768ce3262835722d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_9a33182a16dde1f8" hs_bindgen_9a33182a16dde1f8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1304: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_9a33182a16dde1f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_2b30396ce4eb82f7" hs_bindgen_2b30396ce4eb82f7 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1306: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_2b30396ce4eb82f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_51cb5bc912464db0" hs_bindgen_51cb5bc912464db0 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1308: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_51cb5bc912464db0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_f212e36dfcb39e92" hs_bindgen_f212e36dfcb39e92 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1310: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_f212e36dfcb39e92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_34dae9a6bd354d15" hs_bindgen_34dae9a6bd354d15 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1312: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_34dae9a6bd354d15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_7e458ba8126d92c7" hs_bindgen_7e458ba8126d92c7 :: + 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:1315: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_7e458ba8126d92c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_6411cf4757e0f83c" hs_bindgen_6411cf4757e0f83c :: + 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:1317: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_6411cf4757e0f83c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_e5828cb4d54d9dec" hs_bindgen_e5828cb4d54d9dec :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1320: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_e5828cb4d54d9dec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_1a85533a8da6b72a" hs_bindgen_1a85533a8da6b72a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1322: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_1a85533a8da6b72a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_c7d38ae678c91998" hs_bindgen_c7d38ae678c91998 :: + 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:1328: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_c7d38ae678c91998 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_88b6c368c10bc80d" hs_bindgen_88b6c368c10bc80d :: + 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:1331: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_88b6c368c10bc80d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_7710f702068e2426" hs_bindgen_7710f702068e2426 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1334: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_7710f702068e2426 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_6e6b72f810192dc4" hs_bindgen_6e6b72f810192dc4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1337: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_6e6b72f810192dc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_34981d811552b13f" hs_bindgen_34981d811552b13f :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1339: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_34981d811552b13f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_c362b516558185bd" hs_bindgen_c362b516558185bd :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1341: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_c362b516558185bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_672830328b8d2e5b" hs_bindgen_672830328b8d2e5b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1343: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_672830328b8d2e5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_f1688861b5861fe2" hs_bindgen_f1688861b5861fe2 :: + 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:1358: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_f1688861b5861fe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_db30fad4061eb58b" hs_bindgen_db30fad4061eb58b :: + 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:1372: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_db30fad4061eb58b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_c2528bcc7cc76b00" hs_bindgen_c2528bcc7cc76b00 :: + 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:1390: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_c2528bcc7cc76b00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_887d282b1fd2ff9a" hs_bindgen_887d282b1fd2ff9a :: + 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:1405: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_887d282b1fd2ff9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_188fea210dc6eced" hs_bindgen_188fea210dc6eced :: + 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_188fea210dc6eced + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1411: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_188fea210dc6eced x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_49e4448827c1db2f" hs_bindgen_49e4448827c1db2f :: + 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_49e4448827c1db2f + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1413: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_49e4448827c1db2f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_b540db8723f6a518" hs_bindgen_b540db8723f6a518 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1415: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_b540db8723f6a518 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_3a48f9e434208bb0" hs_bindgen_3a48f9e434208bb0 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1417: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_3a48f9e434208bb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_a0361e2e5d3eb72d" hs_bindgen_a0361e2e5d3eb72d :: + 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_a0361e2e5d3eb72d + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1423: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_a0361e2e5d3eb72d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_9e9d7a854f3c2227" hs_bindgen_9e9d7a854f3c2227 :: + 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_9e9d7a854f3c2227 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1425: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_9e9d7a854f3c2227 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_0bafdb2974695c18" hs_bindgen_0bafdb2974695c18 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1427: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_0bafdb2974695c18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_33cf0dbc7fb273f1" hs_bindgen_33cf0dbc7fb273f1 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1429: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_33cf0dbc7fb273f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_738c7b77f8b9f994" hs_bindgen_738c7b77f8b9f994 :: + 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_738c7b77f8b9f994 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1435: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_738c7b77f8b9f994 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_76501f32c86168a5" hs_bindgen_76501f32c86168a5 :: + 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_76501f32c86168a5 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1437: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_76501f32c86168a5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_2cc36412120beda7" hs_bindgen_2cc36412120beda7 :: + 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:1440: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_2cc36412120beda7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_08afcaefc9c726d6" hs_bindgen_08afcaefc9c726d6 :: + 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:1443: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_08afcaefc9c726d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_0a0f8683b3d9ef60" hs_bindgen_0a0f8683b3d9ef60 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1449: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_0a0f8683b3d9ef60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_4e852b26b52050f0" hs_bindgen_4e852b26b52050f0 :: + 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:1452: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_4e852b26b52050f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_b534f891bde72e48" hs_bindgen_b534f891bde72e48 :: + 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:1455: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_b534f891bde72e48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_028d09d378293be2" hs_bindgen_028d09d378293be2 :: + 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:1458: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_028d09d378293be2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_70f9a37c411bc1fb" hs_bindgen_70f9a37c411bc1fb :: + 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:1461: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_70f9a37c411bc1fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_6af31cf633bdf8a6" hs_bindgen_6af31cf633bdf8a6 :: + 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:1464: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_6af31cf633bdf8a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_7930dcb610810b87" hs_bindgen_7930dcb610810b87 :: + 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:1467: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_7930dcb610810b87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_63abe0b504520d0c" hs_bindgen_63abe0b504520d0c :: + 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:1471: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_63abe0b504520d0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_fc217fe196f1a10c" hs_bindgen_fc217fe196f1a10c :: + 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:1475: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_fc217fe196f1a10c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_a59dea6eb1e2ea06" hs_bindgen_a59dea6eb1e2ea06 :: + 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:1478: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_a59dea6eb1e2ea06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_d9ccaee8d09915fd" hs_bindgen_d9ccaee8d09915fd :: + 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:1485: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_d9ccaee8d09915fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_5e8dc94b5c756fe6" hs_bindgen_5e8dc94b5c756fe6 :: + 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:1493: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_5e8dc94b5c756fe6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_219b7ca0d34124d2" hs_bindgen_219b7ca0d34124d2 :: + 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:1498: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_219b7ca0d34124d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_0dd1906fcc1b5c3b" hs_bindgen_0dd1906fcc1b5c3b :: + 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:1501: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_0dd1906fcc1b5c3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_d6776a444edeb006" hs_bindgen_d6776a444edeb006 :: + 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_d6776a444edeb006 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1504: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_d6776a444edeb006 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_fc1ec822dd0362f7" hs_bindgen_fc1ec822dd0362f7 :: + 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:1517: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_fc1ec822dd0362f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_e898bb064fc0129e" hs_bindgen_e898bb064fc0129e :: + 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:1522: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_e898bb064fc0129e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_0146f5a5bf524093" hs_bindgen_0146f5a5bf524093 :: + 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:1525: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_0146f5a5bf524093 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_03791086f292769b" hs_bindgen_03791086f292769b :: + 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_03791086f292769b + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1528: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_03791086f292769b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_721fe896c4cd582c" hs_bindgen_721fe896c4cd582c :: + 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:1540: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_721fe896c4cd582c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_890a984b8b323d73" hs_bindgen_890a984b8b323d73 :: + 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:1545: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_890a984b8b323d73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_990e580c798e68a2" hs_bindgen_990e580c798e68a2 :: + 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:1547: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_990e580c798e68a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_ab0f5edb289a57fd" hs_bindgen_ab0f5edb289a57fd :: + 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_ab0f5edb289a57fd + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1549: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_ab0f5edb289a57fd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_4a0ee1563434c208" hs_bindgen_4a0ee1563434c208 :: + 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:1552: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_4a0ee1563434c208 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_2c5c11953e14867b" hs_bindgen_2c5c11953e14867b :: + 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:1560: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_2c5c11953e14867b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_c46ba7894a838ce4" hs_bindgen_c46ba7894a838ce4 :: + 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:1568: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_c46ba7894a838ce4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_9b839d64e4972f06" hs_bindgen_9b839d64e4972f06 :: + 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_9b839d64e4972f06 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1570: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_9b839d64e4972f06 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_65bfb0809a49d5ca" hs_bindgen_65bfb0809a49d5ca :: + 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_65bfb0809a49d5ca + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1571: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_65bfb0809a49d5ca x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_600da084289d1d56" hs_bindgen_600da084289d1d56 :: + 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:1579: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_600da084289d1d56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_730f147b8eebe10e" hs_bindgen_730f147b8eebe10e :: + 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:1584: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_730f147b8eebe10e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_244e8ba6230ccfde" hs_bindgen_244e8ba6230ccfde :: + 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:1586: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_244e8ba6230ccfde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_9f56f260387d93eb" hs_bindgen_9f56f260387d93eb :: + 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:1589: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_9f56f260387d93eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_0082a35f2018d766" hs_bindgen_0082a35f2018d766 :: + 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:1591: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_0082a35f2018d766 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_42b27c104693c2d3" hs_bindgen_42b27c104693c2d3 :: + 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_42b27c104693c2d3 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1594: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_42b27c104693c2d3 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_eda367670f5a62ab" hs_bindgen_eda367670f5a62ab :: + 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:1608: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_eda367670f5a62ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_0769f25a02815b35" hs_bindgen_0769f25a02815b35 :: + 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:1613: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_0769f25a02815b35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_1451d6832e6bac35" hs_bindgen_1451d6832e6bac35 :: + 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:1616: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_1451d6832e6bac35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_8d95ce370db5376c" hs_bindgen_8d95ce370db5376c :: + 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:1621: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_8d95ce370db5376c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_f2ca7802ae7e509b" hs_bindgen_f2ca7802ae7e509b :: + 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_f2ca7802ae7e509b + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1625: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_f2ca7802ae7e509b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_6cd2432ea0718deb" hs_bindgen_6cd2432ea0718deb :: + 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:1638: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_6cd2432ea0718deb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_2c1d67186b6580f1" hs_bindgen_2c1d67186b6580f1 :: + 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:1643: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_2c1d67186b6580f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_f631f0294a5dea37" hs_bindgen_f631f0294a5dea37 :: + 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:1646: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_f631f0294a5dea37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_d848668fd59a34b4" hs_bindgen_d848668fd59a34b4 :: + 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_d848668fd59a34b4 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1651: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_d848668fd59a34b4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_96c28ad4c84bc602" hs_bindgen_96c28ad4c84bc602 :: + 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:1664: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_96c28ad4c84bc602 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_8304e4e7945ed3ac" hs_bindgen_8304e4e7945ed3ac :: + 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_8304e4e7945ed3ac + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1671: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_8304e4e7945ed3ac x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_405fd7ba8a4addf4" hs_bindgen_405fd7ba8a4addf4 :: + 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_405fd7ba8a4addf4 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1686: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_405fd7ba8a4addf4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_4439cd42d831b9d5" hs_bindgen_4439cd42d831b9d5 :: + 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_4439cd42d831b9d5 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1701: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_4439cd42d831b9d5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_ca9c4af85693247c" hs_bindgen_ca9c4af85693247c :: + 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:1702: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_ca9c4af85693247c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_dc2f5059f7161d5c" hs_bindgen_dc2f5059f7161d5c :: + 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:1707: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_dc2f5059f7161d5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_0ace4a852ace3225" hs_bindgen_0ace4a852ace3225 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1709: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_0ace4a852ace3225 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_7b5d256094b7e3bb" hs_bindgen_7b5d256094b7e3bb :: + 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:1712: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_7b5d256094b7e3bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_2f6e0a980bc17139" hs_bindgen_2f6e0a980bc17139 :: + 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:1713: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_2f6e0a980bc17139 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_1cbb75f05b5b6815" hs_bindgen_1cbb75f05b5b6815 :: + 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:1715: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_1cbb75f05b5b6815 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_0fdeae73aa9924b5" hs_bindgen_0fdeae73aa9924b5 :: + 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:1716: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_0fdeae73aa9924b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_fffe5d2a375f6687" hs_bindgen_fffe5d2a375f6687 :: + 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:1719: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_fffe5d2a375f6687 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_10f1ea93d6c950f2" hs_bindgen_10f1ea93d6c950f2 :: + 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:1721: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_10f1ea93d6c950f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_d10cf2c66dbda980" hs_bindgen_d10cf2c66dbda980 :: + 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:1722: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_d10cf2c66dbda980 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_165bf1277115307c" hs_bindgen_165bf1277115307c :: + 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:1723: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_165bf1277115307c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_5d33f95f788af323" hs_bindgen_5d33f95f788af323 :: + 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:1725: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_5d33f95f788af323 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_1f0d4e1da0c5e021" hs_bindgen_1f0d4e1da0c5e021 :: + 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:1728: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_1f0d4e1da0c5e021 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_b25d19ce41360366" hs_bindgen_b25d19ce41360366 :: + 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:1730: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_b25d19ce41360366 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_3744706d821c038a" hs_bindgen_3744706d821c038a :: + 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:1733: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_3744706d821c038a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_b3e41c810187007f" hs_bindgen_b3e41c810187007f :: + 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:1737: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_b3e41c810187007f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_794608e301df0eae" hs_bindgen_794608e301df0eae :: + 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:1740: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_794608e301df0eae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_679b0ea39389eaa9" hs_bindgen_679b0ea39389eaa9 :: + 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:1743: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_679b0ea39389eaa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_21ff95c2fe917f3c" hs_bindgen_21ff95c2fe917f3c :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1759: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_21ff95c2fe917f3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_fac9539236e0cf06" hs_bindgen_fac9539236e0cf06 :: + 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:1765: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_fac9539236e0cf06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_7894bac2e317d15a" hs_bindgen_7894bac2e317d15a :: + 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:1776: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_7894bac2e317d15a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_eca253bd0f001aa4" hs_bindgen_eca253bd0f001aa4 :: + 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:1791: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_eca253bd0f001aa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_595c0e25d63f4f70" hs_bindgen_595c0e25d63f4f70 :: + 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:1799: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_595c0e25d63f4f70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_de4c8fd1dc7c8555" hs_bindgen_de4c8fd1dc7c8555 :: + 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_de4c8fd1dc7c8555 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1801: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_de4c8fd1dc7c8555 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_2f1cf46a1e114a0f" hs_bindgen_2f1cf46a1e114a0f :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1803: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_2f1cf46a1e114a0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_6efb7abea973a42c" hs_bindgen_6efb7abea973a42c :: + 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:1809: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_6efb7abea973a42c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_f950cea14641d664" hs_bindgen_f950cea14641d664 :: + 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:1816: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_f950cea14641d664 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_bcef9acb15d7cc1a" hs_bindgen_bcef9acb15d7cc1a :: + 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_bcef9acb15d7cc1a + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1834: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_bcef9acb15d7cc1a (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_99ed067240256b35" hs_bindgen_99ed067240256b35 :: + 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_99ed067240256b35 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1843: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_99ed067240256b35 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_7260af656122d30e" hs_bindgen_7260af656122d30e :: + 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_7260af656122d30e + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1851: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_7260af656122d30e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_30bd9511c26e39d5" hs_bindgen_30bd9511c26e39d5 :: + 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_30bd9511c26e39d5 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1861: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_30bd9511c26e39d5 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_80a79399aa2476a2" hs_bindgen_80a79399aa2476a2 :: + 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_80a79399aa2476a2 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1880: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_80a79399aa2476a2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_074a4430fdd4d04f" hs_bindgen_074a4430fdd4d04f :: + 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:1887:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_074a4430fdd4d04f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_bf6a766181066442" hs_bindgen_bf6a766181066442 :: + 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:1893: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_bf6a766181066442 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_0b9d5a6036c73c90" hs_bindgen_0b9d5a6036c73c90 :: + 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:1899: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_0b9d5a6036c73c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_7843a0044b57e692" hs_bindgen_7843a0044b57e692 :: + 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_7843a0044b57e692 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1912: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_7843a0044b57e692 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_9a8bcfdd68128828" hs_bindgen_9a8bcfdd68128828 :: + 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:1920:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_9a8bcfdd68128828 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_3033dfb443645b69" hs_bindgen_3033dfb443645b69 :: + 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:1929: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_3033dfb443645b69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_f4352e99ba0ada1d" hs_bindgen_f4352e99ba0ada1d :: + 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:1940: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_f4352e99ba0ada1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_13331bde1ae55956" hs_bindgen_13331bde1ae55956 :: + 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_13331bde1ae55956 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1951: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_13331bde1ae55956 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_0ae83977043019c7" hs_bindgen_0ae83977043019c7 :: + 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:1958:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_0ae83977043019c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_2f4577dd5f11e957" hs_bindgen_2f4577dd5f11e957 :: + 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_2f4577dd5f11e957 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1961: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_2f4577dd5f11e957 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_2c29f25cd67bf2a4" hs_bindgen_2c29f25cd67bf2a4 :: + 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_2c29f25cd67bf2a4 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1964: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_2c29f25cd67bf2a4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_d811f2c0fdb27938" hs_bindgen_d811f2c0fdb27938 :: + 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:1976: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_d811f2c0fdb27938 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_dd83bdb8659e47fd" hs_bindgen_dd83bdb8659e47fd :: + 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:1984: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_dd83bdb8659e47fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_4d06ec4e4bb0241b" hs_bindgen_4d06ec4e4bb0241b :: + 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_4d06ec4e4bb0241b + +{-| 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:1999: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_4d06ec4e4bb0241b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_90186c0dbf04fb70" hs_bindgen_90186c0dbf04fb70 :: + 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_90186c0dbf04fb70 + +{-| 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:2018: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_90186c0dbf04fb70 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_cea1b60dc934b212" hs_bindgen_cea1b60dc934b212 :: + 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_cea1b60dc934b212 + +{-| 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:2034: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_cea1b60dc934b212 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_a6d4ffa274210ef4" hs_bindgen_a6d4ffa274210ef4 :: + 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_a6d4ffa274210ef4 + +{-| 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:2061: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_a6d4ffa274210ef4 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_2_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_40e317c3b925b7b9" hs_bindgen_40e317c3b925b7b9 :: + 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:2079: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_40e317c3b925b7b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_e0b4defb56fba08d" hs_bindgen_e0b4defb56fba08d :: + 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:2100: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_e0b4defb56fba08d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_7cd062f58c241284" hs_bindgen_7cd062f58c241284 :: + 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:2121: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_7cd062f58c241284 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/Unsafe.hs new file mode 100644 index 00000000..624313e0 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_2_0/Unsafe.hs @@ -0,0 +1,12267 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_2_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_2_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_9fac971814865fff (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_e66562b8078c41c3 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_16282a50cf21ce90 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_f663f3dd5d1f083e (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_d3126136b047655b (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_9466a797e0d24cb9 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_308bdc38b3e60003 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_511e3e7029b8ebc4 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_61485ce6b95f1136 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_554b6aa8a9a1a325 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ed1787a507819844 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_09581d6cfa4b3db7 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a3ce0617e480762 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b6b5a49b8cbff810 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7b9dbc4f371833e7 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4ce2f8ff9970b947 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_de0f163c41c805b3 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_93627372623f407e (" + , " 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_eaa3c491c8619b47 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7410a0e0598d4bad (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7339ce23a46f84f2 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d199c440a71ea1c (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb948cc5fbc45278 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3cd3039f257a980a (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e0805760492c835f (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a5940d5384f90445 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f141db3a932b9583 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0a5ac4671d01732e (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ce1667b810cbbe7 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9bdc231bd480f39c (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7944ea67fbdd0662 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_3a33ebd231a4b9c4 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d13a2fb950c654a6 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_988f225f793e578a (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f6eed6e1d1e8ec39 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78d52da146dba00a (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f3f665b18b07d199 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_41351850a146f004 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bab8762a4b1887b3 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ad3d784fe6e0e75 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_7ff47db45a25784e (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bbfaf1e10d86b421 (" + , " 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_0485b8df52ca4c13 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_47049a06fa536317 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3dbd21f288c0554e (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0c9a159177d16297 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82643a5fc13babb6 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_06715207d15422a4 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_875fdf5220b0a624 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60b08b05e0cb6452 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e311970efcf4987 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b84556992ce0522f (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7cc4d939c24cedae (" + , " 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_309f5bdaab0136ff (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_05e1ff9cb29ffd63 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_8f1b9062df3045f2 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8922178ea91bdf1d (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_708ceb836e198012 (" + , " 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_7a03b1538baed311 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_c0e6578c4ff9effb (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cd464cafd794b7a6 (" + , " 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_3f4683e395db73ff (" + , " 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_ee3ac03ad844c2ca (" + , " 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_f0103358420d2de9 (" + , " 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_3dd1a9d282811349 (" + , " 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_233cc9128b1270b5 (" + , " 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_fba32e54b2c2e084 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c3b430cf9cbabd8c (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_06512c56adb4af5f (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_190d7389bc572d54 (" + , " 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_7d9bd53568314a9b (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_cb766f85cc41aca0 (" + , " 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_cc3f6e1940524e70 (" + , " 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_5ada1654c32404bf (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8b33d324930ed316 (" + , " 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_708c9b8cc43ff9fd (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_fe842c2e218d500c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4e674e8d9681a120 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_236be1bbeea61753 (" + , " 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_ae9c9f610fac8795 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_6a22b440efe34a38 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d47c59d619aef3c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f5f1808272a4bdb (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ca9120478170f2ce (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2a0d5b71c52267aa (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3015f530e52fb627 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0d766b3abe8348f (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_85f9bb296b9aeeee (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d6b5c7e8439a636 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79fa7818a45d87d6 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_9a8e64552de69ceb (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_6c784477048a5a94 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_e92817c52c424f9c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_11421029b33645c0 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_b8c7839ec8e414bc (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_18296a084b818ffc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_16db8d436ffedc5c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c781f48a050517d7 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_99ed144c878c5f20 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d084fb046bdcfd2f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_374847cb4cc77b68 (" + , " 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_d2030b5bef2a0574 (" + , " 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_8014e94598e5775a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_becb0ad654be5ef7 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1fcbc6b6cbc06a9c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8828ce1febfa32a4 (" + , " 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_01013820435ff169 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_358cd208c460ee7e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_39e33f4a2308642f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_70028ff7018fa99d (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_043c55715d14f40c (" + , " 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_31f5870c2b789f1c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_124947a8f7a4946c (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_11e2beaf19e3c5ea (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_628e4191ba779979 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a91afe11f90d1a1e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_081d0157f28934a7 (" + , " 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_df3286de20dc7461 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_086668198fea4b98 (" + , " 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_670408b7a4d6572c (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bf63b718d4d2281f (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2865a8e7dd5bb763 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f3b5b845c6d41e0b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f6fa3ee72ed76867 (" + , " 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_f871eba3b5feba16 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6a87700c3ca0f411 (" + , " 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_153541043993514e (" + , " 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_fd5c4379b690f7af (" + , " 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_d431b2d1b2e376bd (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f1da922497c453de (" + , " 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_cbe3b42bc5b38ba2 (" + , " 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_6a11b63144b22502 (" + , " 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_b672728957023cb6 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_caaf6184eea42033 (" + , " 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_f13bf795b447be3f (" + , " 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_5a03e02f99c11d60 (" + , " 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_ef4dccac7134e11e (" + , " 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_82158bf281515c80 (" + , " 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_de3fa93ac1dc4ea0 (" + , " 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_779b4f703cca3d0d (" + , " 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_bf17c7eb007063a9 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54a310552817d98b (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_49c2c433f1d54287 (" + , " 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_e120bfcb595f7abe (" + , " 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_9f93e937a7a6d5fc (" + , " 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_3d97cde2f2e98e92 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_494a751258be1b10 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e336b262d5e61bf4 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff8a4847ace3802f (" + , " 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_830a11ea6b6083ed (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2f560c79d25effc6 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c9cbc4ccdcf46deb (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7a5481a17a71395 (" + , " 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_0a3caae1f360c619 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_db7785632e711f22 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6db2f1d78b76f833 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9f6e1dd9bb4737a1 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_61eeff4d1784b207 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_20a13842ce1d5fa2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b147020fb1dd2bdc (" + , " 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_65ebf1cc2014e633 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_545c44041ba89fde (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e3ea2729ad2361c1 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_65af1f9398eed206 (" + , " 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_137e7a7eb34de586 (" + , " 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_d5ddd4f67d766ac9 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_efefe5eeb3f43bf2 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7c05d61dfb13bf7e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9d7c338dfd07459b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c0221cb1f20021a6 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cb8692d216e4acb6 (" + , " 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_9e60348fed354810 (" + , " 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_00253f4a5c9f741b (" + , " 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_b176cf5f32fe4487 (" + , " 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_97e928ec65b8045e (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7dd007ceb17bf431 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_480f5c0801b8742a (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_155d8bcf8695653f (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_87e8c339ddd8c538 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5c97b81814c19534 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf0ac16b150ecbe0 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_391d017323a9dea5 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ecb7925a7955a982 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50e7385ee23351f2 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5fec84d6371a6cf4 (" + , " 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_e937fcca4dfc8f67 (" + , " 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_8b96b33c46ac553e (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_31e60f395a757ea1 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_33d1e2e802b19619 (" + , " 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_f1473c3a62e581bb (" + , " 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_50d55bed5f325c39 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e166a7572cce29cf (" + , " 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_cb935cb3a99ebdf1 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_87c811b4355561c3 (" + , " 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_4ab044115d7de94b (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cf8d403cd7b0bc17 (" + , " 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_000b6ed7db05f506 (" + , " 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_28730dd2b393ce84 (" + , " 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_e2815f143136619c (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dc1e87f8fd95e040 (" + , " 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_cb869e5ea1039471 (" + , " 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_1d1a443926cb0061 (" + , " 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_f16b74efe972956f (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_42316571ae6c8221 (" + , " 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_810566a8eed54334 (" + , " 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_c38c3e8261539e77 (" + , " 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_64b8ddc94a7ad444 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_54111b1fc0b38148 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ea75974aaf1821bc (" + , " 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_e0f6254fb633cfa7 (" + , " 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_c0cc09e9f2037a4a (" + , " 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_185c023a0e03dee0 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cad77e19d5381b96 (" + , " 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_3031257df00bd32c (" + , " 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_a043d73162a6d516 (" + , " 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_46569d260badd4c8 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_967cb6445860da3f (" + , " 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_f66489f456a91d03 (" + , " 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_92af23f9995a8a61 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_074fa8747a7084c2 (" + , " 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_c7be1de5fcce3a99 (" + , " 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_efda3aa36c0c0053 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e9cd7287fe3cd16c (" + , " 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_5a793d3776d92bc6 (" + , " 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_984ae42e0b9a513c (" + , " 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_a3b71ba1be06e411 (" + , " 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_c4598e28a14797aa (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_13100ba813fdd9f9 (" + , " 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_8b6849934ef63ceb (" + , " 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_5d980d0af8568e48 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2b13be120b36291c (" + , " 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_2d74aaf4e82311ff (" + , " 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_70b422547f334738 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e4f2ccea6f0897a8 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f91da6a98b4c051f (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e644158e17140ae7 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4b2de9a84cf67c39 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9da7a3293969b0d3 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6ef548bac806f6a7 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b5a0046d7ad4fdbf (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ecad387a07d0bd38 (" + , " 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_f82777910a6a3fbe (" + , " 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_7142e13461316902 (" + , " 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_728140345da797ce (" + , " 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_0ff2f49e66766798 (" + , " 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_3050d02ec157eebe (" + , " 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_00628ff9b841da48 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_230f3f3a43ae6dd1 (" + , " 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_4aeb3462b4f603fb (" + , " 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_03e1747510203051 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b05df36aa5a65ab1 (" + , " 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_89d342675ad9d26f (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b83504861fd2248f (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_da8e94ec0acebbc4 (" + , " 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_a78d015afba265d7 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_ae63c9585f4062b8 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5891717a243c35c9 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_845c6216bd1c08d3 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7025b14abaf797ae (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be75d1ab0335c64b (" + , " 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_74e5f7842210e8dd (" + , " 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_3ced36acb220a561 (" + , " 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_90bf243f517f16d7 (" + , " 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_5133568eeb66531c (" + , " 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_550d150480ef63b5 (" + , " 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_9ea848027b3501b8 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3c838dfbadebc4f5 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_02ba144368ae861b (" + , " 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_27dea4af8bb5c459 (" + , " 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_6610a4ee339da14e (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e090aa832860ddf1 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a4e5654ea6099fb (" + , " 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_ac6da4ae14c451fd (" + , " 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_ac513dc21bdee378 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_89caeda961fd92ed (" + , " 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_2e36c7971cba7f0e (" + , " 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_cfdd7d8b1b5c5b57 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_81cbee4c6a3b1e98 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_83406a968a5da6fb (" + , " 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_5c1a7386b3a4eb22 (" + , " 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_4e0e77caf4795628 (" + , " 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_808e23ee3a541afb (" + , " 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_dfce70c24a2e0c4b (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c919ad46a3ceb2bf (" + , " 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_962c729b892cbe96 (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_9fac971814865fff" hs_bindgen_9fac971814865fff :: + 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:144: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_9fac971814865fff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_e66562b8078c41c3" hs_bindgen_e66562b8078c41c3 :: + 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:153: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_e66562b8078c41c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_16282a50cf21ce90" hs_bindgen_16282a50cf21ce90 :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_16282a50cf21ce90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_f663f3dd5d1f083e" hs_bindgen_f663f3dd5d1f083e :: + 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:166: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_f663f3dd5d1f083e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_d3126136b047655b" hs_bindgen_d3126136b047655b :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_d3126136b047655b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_9466a797e0d24cb9" hs_bindgen_9466a797e0d24cb9 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_9466a797e0d24cb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_308bdc38b3e60003" hs_bindgen_308bdc38b3e60003 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_308bdc38b3e60003 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_511e3e7029b8ebc4" hs_bindgen_511e3e7029b8ebc4 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_511e3e7029b8ebc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_61485ce6b95f1136" hs_bindgen_61485ce6b95f1136 :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_61485ce6b95f1136 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_554b6aa8a9a1a325" hs_bindgen_554b6aa8a9a1a325 :: + 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:197: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_554b6aa8a9a1a325 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_ed1787a507819844" hs_bindgen_ed1787a507819844 :: + 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:203: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_ed1787a507819844 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_09581d6cfa4b3db7" hs_bindgen_09581d6cfa4b3db7 :: + 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:209: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_09581d6cfa4b3db7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_1a3ce0617e480762" hs_bindgen_1a3ce0617e480762 :: + 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:221: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_1a3ce0617e480762 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_b6b5a49b8cbff810" hs_bindgen_b6b5a49b8cbff810 :: + 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:231: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_b6b5a49b8cbff810 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_7b9dbc4f371833e7" hs_bindgen_7b9dbc4f371833e7 :: + 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:236:28@ + +__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_7b9dbc4f371833e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_4ce2f8ff9970b947" hs_bindgen_4ce2f8ff9970b947 :: + 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:241: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_4ce2f8ff9970b947 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_de0f163c41c805b3" hs_bindgen_de0f163c41c805b3 :: + 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:258: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 "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_de0f163c41c805b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_93627372623f407e" hs_bindgen_93627372623f407e :: + 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:270: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_93627372623f407e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_eaa3c491c8619b47" hs_bindgen_eaa3c491c8619b47 :: + 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:284: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_eaa3c491c8619b47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_7410a0e0598d4bad" hs_bindgen_7410a0e0598d4bad :: + 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:292: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_7410a0e0598d4bad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_7339ce23a46f84f2" hs_bindgen_7339ce23a46f84f2 :: + 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:302: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_7339ce23a46f84f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_0d199c440a71ea1c" hs_bindgen_0d199c440a71ea1c :: + 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:312: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_0d199c440a71ea1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_eb948cc5fbc45278" hs_bindgen_eb948cc5fbc45278 :: + 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:322: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_eb948cc5fbc45278 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_3cd3039f257a980a" hs_bindgen_3cd3039f257a980a :: + 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:329: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_3cd3039f257a980a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_e0805760492c835f" hs_bindgen_e0805760492c835f :: + 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:343: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_e0805760492c835f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_a5940d5384f90445" hs_bindgen_a5940d5384f90445 :: + 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:351: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_a5940d5384f90445 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_f141db3a932b9583" hs_bindgen_f141db3a932b9583 :: + 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:359: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_f141db3a932b9583 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_0a5ac4671d01732e" hs_bindgen_0a5ac4671d01732e :: + 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:367: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_0a5ac4671d01732e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_8ce1667b810cbbe7" hs_bindgen_8ce1667b810cbbe7 :: + 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:376: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_8ce1667b810cbbe7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_9bdc231bd480f39c" hs_bindgen_9bdc231bd480f39c :: + 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:386: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_9bdc231bd480f39c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_7944ea67fbdd0662" hs_bindgen_7944ea67fbdd0662 :: + 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:394: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_7944ea67fbdd0662 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_3a33ebd231a4b9c4" hs_bindgen_3a33ebd231a4b9c4 :: + 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:401: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_3a33ebd231a4b9c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_d13a2fb950c654a6" hs_bindgen_d13a2fb950c654a6 :: + 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:409: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_d13a2fb950c654a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_988f225f793e578a" hs_bindgen_988f225f793e578a :: + 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:424: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_988f225f793e578a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_f6eed6e1d1e8ec39" hs_bindgen_f6eed6e1d1e8ec39 :: + 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:432: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_f6eed6e1d1e8ec39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_78d52da146dba00a" hs_bindgen_78d52da146dba00a :: + 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:441: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_78d52da146dba00a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_f3f665b18b07d199" hs_bindgen_f3f665b18b07d199 :: + 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:450: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_f3f665b18b07d199 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_41351850a146f004" hs_bindgen_41351850a146f004 :: + 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:459: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_41351850a146f004 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_bab8762a4b1887b3" hs_bindgen_bab8762a4b1887b3 :: + 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:469: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_bab8762a4b1887b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_9ad3d784fe6e0e75" hs_bindgen_9ad3d784fe6e0e75 :: + 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:477: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_9ad3d784fe6e0e75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_7ff47db45a25784e" hs_bindgen_7ff47db45a25784e :: + 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:485: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_7ff47db45a25784e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_bbfaf1e10d86b421" hs_bindgen_bbfaf1e10d86b421 :: + 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:495: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_bbfaf1e10d86b421 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_0485b8df52ca4c13" hs_bindgen_0485b8df52ca4c13 :: + 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:505: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_0485b8df52ca4c13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_47049a06fa536317" hs_bindgen_47049a06fa536317 :: + 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:519: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_47049a06fa536317 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_3dbd21f288c0554e" hs_bindgen_3dbd21f288c0554e :: + 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:524: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_3dbd21f288c0554e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_0c9a159177d16297" hs_bindgen_0c9a159177d16297 :: + 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:529: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_0c9a159177d16297 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_82643a5fc13babb6" hs_bindgen_82643a5fc13babb6 :: + 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:534: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_82643a5fc13babb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_06715207d15422a4" hs_bindgen_06715207d15422a4 :: + 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:539: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_06715207d15422a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_875fdf5220b0a624" hs_bindgen_875fdf5220b0a624 :: + 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:544: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_875fdf5220b0a624 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_60b08b05e0cb6452" hs_bindgen_60b08b05e0cb6452 :: + 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:550: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_60b08b05e0cb6452 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_4e311970efcf4987" hs_bindgen_4e311970efcf4987 :: + 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:556: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_4e311970efcf4987 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_b84556992ce0522f" hs_bindgen_b84556992ce0522f :: + 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:562:5@ + +__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_b84556992ce0522f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_7cc4d939c24cedae" hs_bindgen_7cc4d939c24cedae :: + 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:568:5@ + +__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_7cc4d939c24cedae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_309f5bdaab0136ff" hs_bindgen_309f5bdaab0136ff :: + 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:573: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_309f5bdaab0136ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_05e1ff9cb29ffd63" hs_bindgen_05e1ff9cb29ffd63 :: + 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:583:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_05e1ff9cb29ffd63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_8f1b9062df3045f2" hs_bindgen_8f1b9062df3045f2 :: + 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:588: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_8f1b9062df3045f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_8922178ea91bdf1d" hs_bindgen_8922178ea91bdf1d :: + 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:593: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_8922178ea91bdf1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_708ceb836e198012" hs_bindgen_708ceb836e198012 :: + 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_708ceb836e198012 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:601: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_708ceb836e198012 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_7a03b1538baed311" hs_bindgen_7a03b1538baed311 :: + 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:613:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_7a03b1538baed311 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_c0e6578c4ff9effb" hs_bindgen_c0e6578c4ff9effb :: + 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:619:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_c0e6578c4ff9effb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_cd464cafd794b7a6" hs_bindgen_cd464cafd794b7a6 :: + 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_cd464cafd794b7a6 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:638: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_cd464cafd794b7a6 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_3f4683e395db73ff" hs_bindgen_3f4683e395db73ff :: + 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_3f4683e395db73ff + +{-| 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:671: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_3f4683e395db73ff x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_ee3ac03ad844c2ca" hs_bindgen_ee3ac03ad844c2ca :: + 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_ee3ac03ad844c2ca + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:695: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_ee3ac03ad844c2ca x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_f0103358420d2de9" hs_bindgen_f0103358420d2de9 :: + 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_f0103358420d2de9 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:722: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_f0103358420d2de9 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_3dd1a9d282811349" hs_bindgen_3dd1a9d282811349 :: + 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_3dd1a9d282811349 + +{-| 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:741: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_3dd1a9d282811349 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_233cc9128b1270b5" hs_bindgen_233cc9128b1270b5 :: + 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_233cc9128b1270b5 + +{-| 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:764: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_233cc9128b1270b5 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_2_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_fba32e54b2c2e084" hs_bindgen_fba32e54b2c2e084 :: + 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:782: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_fba32e54b2c2e084 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_c3b430cf9cbabd8c" hs_bindgen_c3b430cf9cbabd8c :: + 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:788: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_c3b430cf9cbabd8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_06512c56adb4af5f" hs_bindgen_06512c56adb4af5f :: + 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:794: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_06512c56adb4af5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_190d7389bc572d54" hs_bindgen_190d7389bc572d54 :: + 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_190d7389bc572d54 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:799: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_190d7389bc572d54 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_7d9bd53568314a9b" hs_bindgen_7d9bd53568314a9b :: + 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:805: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_7d9bd53568314a9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_cb766f85cc41aca0" hs_bindgen_cb766f85cc41aca0 :: + 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_cb766f85cc41aca0 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:811: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_cb766f85cc41aca0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_cc3f6e1940524e70" hs_bindgen_cc3f6e1940524e70 :: + 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_cc3f6e1940524e70 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:817: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_cc3f6e1940524e70 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_5ada1654c32404bf" hs_bindgen_5ada1654c32404bf :: + 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:825: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_5ada1654c32404bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_8b33d324930ed316" hs_bindgen_8b33d324930ed316 :: + 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:835: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_8b33d324930ed316 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_708c9b8cc43ff9fd" hs_bindgen_708c9b8cc43ff9fd :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:848: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_708c9b8cc43ff9fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_fe842c2e218d500c" hs_bindgen_fe842c2e218d500c :: + 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:854:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_fe842c2e218d500c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_4e674e8d9681a120" hs_bindgen_4e674e8d9681a120 :: + 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:859: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_4e674e8d9681a120 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_236be1bbeea61753" hs_bindgen_236be1bbeea61753 :: + 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:864:28@ + +__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_236be1bbeea61753 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_ae9c9f610fac8795" hs_bindgen_ae9c9f610fac8795 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:869:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_ae9c9f610fac8795 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_6a22b440efe34a38" hs_bindgen_6a22b440efe34a38 :: + 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:874: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_6a22b440efe34a38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_2d47c59d619aef3c" hs_bindgen_2d47c59d619aef3c :: + 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:879: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_2d47c59d619aef3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_7f5f1808272a4bdb" hs_bindgen_7f5f1808272a4bdb :: + 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:884: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_7f5f1808272a4bdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_ca9120478170f2ce" hs_bindgen_ca9120478170f2ce :: + 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:890: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_ca9120478170f2ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_2a0d5b71c52267aa" hs_bindgen_2a0d5b71c52267aa :: + 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:895: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_2a0d5b71c52267aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_3015f530e52fb627" hs_bindgen_3015f530e52fb627 :: + 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:900: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_3015f530e52fb627 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_f0d766b3abe8348f" hs_bindgen_f0d766b3abe8348f :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:905: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_f0d766b3abe8348f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_85f9bb296b9aeeee" hs_bindgen_85f9bb296b9aeeee :: + 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_85f9bb296b9aeeee + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:910: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_85f9bb296b9aeeee x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_1d6b5c7e8439a636" hs_bindgen_1d6b5c7e8439a636 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:915: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_1d6b5c7e8439a636 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_79fa7818a45d87d6" hs_bindgen_79fa7818a45d87d6 :: + 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:922: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_79fa7818a45d87d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_9a8e64552de69ceb" hs_bindgen_9a8e64552de69ceb :: + 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:927: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_9a8e64552de69ceb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_6c784477048a5a94" hs_bindgen_6c784477048a5a94 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:929: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_6c784477048a5a94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_e92817c52c424f9c" hs_bindgen_e92817c52c424f9c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:931: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_e92817c52c424f9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_11421029b33645c0" hs_bindgen_11421029b33645c0 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:933: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_11421029b33645c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_b8c7839ec8e414bc" hs_bindgen_b8c7839ec8e414bc :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:934: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_b8c7839ec8e414bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_18296a084b818ffc" hs_bindgen_18296a084b818ffc :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:936: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_18296a084b818ffc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_16db8d436ffedc5c" hs_bindgen_16db8d436ffedc5c :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:937: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_16db8d436ffedc5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_c781f48a050517d7" hs_bindgen_c781f48a050517d7 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:939: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_c781f48a050517d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_99ed144c878c5f20" hs_bindgen_99ed144c878c5f20 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:940: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_99ed144c878c5f20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_d084fb046bdcfd2f" hs_bindgen_d084fb046bdcfd2f :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:941: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_d084fb046bdcfd2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_374847cb4cc77b68" hs_bindgen_374847cb4cc77b68 :: + 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:944: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_374847cb4cc77b68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_d2030b5bef2a0574" hs_bindgen_d2030b5bef2a0574 :: + 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:947: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_d2030b5bef2a0574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_8014e94598e5775a" hs_bindgen_8014e94598e5775a :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:954: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_8014e94598e5775a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_becb0ad654be5ef7" hs_bindgen_becb0ad654be5ef7 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:961: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_becb0ad654be5ef7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_1fcbc6b6cbc06a9c" hs_bindgen_1fcbc6b6cbc06a9c :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:966: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_1fcbc6b6cbc06a9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_8828ce1febfa32a4" hs_bindgen_8828ce1febfa32a4 :: + 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:970: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_8828ce1febfa32a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_01013820435ff169" hs_bindgen_01013820435ff169 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:972: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_01013820435ff169 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_358cd208c460ee7e" hs_bindgen_358cd208c460ee7e :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:973: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_358cd208c460ee7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_39e33f4a2308642f" hs_bindgen_39e33f4a2308642f :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:975: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_39e33f4a2308642f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_70028ff7018fa99d" hs_bindgen_70028ff7018fa99d :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:977: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_70028ff7018fa99d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_043c55715d14f40c" hs_bindgen_043c55715d14f40c :: + 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:980: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_043c55715d14f40c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_31f5870c2b789f1c" hs_bindgen_31f5870c2b789f1c :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:982: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_31f5870c2b789f1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_124947a8f7a4946c" hs_bindgen_124947a8f7a4946c :: + 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:989: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_124947a8f7a4946c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_11e2beaf19e3c5ea" hs_bindgen_11e2beaf19e3c5ea :: + 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:996: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_11e2beaf19e3c5ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_628e4191ba779979" hs_bindgen_628e4191ba779979 :: + 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:1001: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_628e4191ba779979 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_a91afe11f90d1a1e" hs_bindgen_a91afe11f90d1a1e :: + 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:1006: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_a91afe11f90d1a1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_081d0157f28934a7" hs_bindgen_081d0157f28934a7 :: + 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:1024: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_081d0157f28934a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_df3286de20dc7461" hs_bindgen_df3286de20dc7461 :: + 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:1035: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_df3286de20dc7461 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_086668198fea4b98" hs_bindgen_086668198fea4b98 :: + 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:1051: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_086668198fea4b98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_670408b7a4d6572c" hs_bindgen_670408b7a4d6572c :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1055: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_670408b7a4d6572c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_bf63b718d4d2281f" hs_bindgen_bf63b718d4d2281f :: + 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:1058: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_bf63b718d4d2281f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2865a8e7dd5bb763" hs_bindgen_2865a8e7dd5bb763 :: + 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:1060: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_2865a8e7dd5bb763 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_f3b5b845c6d41e0b" hs_bindgen_f3b5b845c6d41e0b :: + 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:1062: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_f3b5b845c6d41e0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_f6fa3ee72ed76867" hs_bindgen_f6fa3ee72ed76867 :: + 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:1064: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_f6fa3ee72ed76867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_f871eba3b5feba16" hs_bindgen_f871eba3b5feba16 :: + 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:1066: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_f871eba3b5feba16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_6a87700c3ca0f411" hs_bindgen_6a87700c3ca0f411 :: + 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:1086: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_6a87700c3ca0f411 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_153541043993514e" hs_bindgen_153541043993514e :: + 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:1108: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_153541043993514e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_fd5c4379b690f7af" hs_bindgen_fd5c4379b690f7af :: + 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_fd5c4379b690f7af + +{-| 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:1116: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_fd5c4379b690f7af x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_d431b2d1b2e376bd" hs_bindgen_d431b2d1b2e376bd :: + 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:1121:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_d431b2d1b2e376bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_f1da922497c453de" hs_bindgen_f1da922497c453de :: + 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:1133: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_f1da922497c453de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_cbe3b42bc5b38ba2" hs_bindgen_cbe3b42bc5b38ba2 :: + 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:1138: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_cbe3b42bc5b38ba2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_6a11b63144b22502" hs_bindgen_6a11b63144b22502 :: + 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:1143: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_6a11b63144b22502 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_b672728957023cb6" hs_bindgen_b672728957023cb6 :: + 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:1145: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_b672728957023cb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_caaf6184eea42033" hs_bindgen_caaf6184eea42033 :: + 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:1152: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_caaf6184eea42033 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_f13bf795b447be3f" hs_bindgen_f13bf795b447be3f :: + 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:1167: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_f13bf795b447be3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_5a03e02f99c11d60" hs_bindgen_5a03e02f99c11d60 :: + 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:1182: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_5a03e02f99c11d60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_ef4dccac7134e11e" hs_bindgen_ef4dccac7134e11e :: + 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: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_ef4dccac7134e11e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_82158bf281515c80" hs_bindgen_82158bf281515c80 :: + 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: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_82158bf281515c80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_de3fa93ac1dc4ea0" hs_bindgen_de3fa93ac1dc4ea0 :: + 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: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_de3fa93ac1dc4ea0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_779b4f703cca3d0d" hs_bindgen_779b4f703cca3d0d :: + 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: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_779b4f703cca3d0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_bf17c7eb007063a9" hs_bindgen_bf17c7eb007063a9 :: + 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_bf17c7eb007063a9 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1256: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_bf17c7eb007063a9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_54a310552817d98b" hs_bindgen_54a310552817d98b :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1258: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_54a310552817d98b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_49c2c433f1d54287" hs_bindgen_49c2c433f1d54287 :: + 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:1260: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_49c2c433f1d54287 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_e120bfcb595f7abe" hs_bindgen_e120bfcb595f7abe :: + 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:1265: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_e120bfcb595f7abe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_9f93e937a7a6d5fc" hs_bindgen_9f93e937a7a6d5fc :: + 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:1270: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_9f93e937a7a6d5fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_3d97cde2f2e98e92" hs_bindgen_3d97cde2f2e98e92 :: + 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:1272: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_3d97cde2f2e98e92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_494a751258be1b10" hs_bindgen_494a751258be1b10 :: + 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:1277: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_494a751258be1b10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_e336b262d5e61bf4" hs_bindgen_e336b262d5e61bf4 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1279: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_e336b262d5e61bf4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_ff8a4847ace3802f" hs_bindgen_ff8a4847ace3802f :: + 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:1282: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_ff8a4847ace3802f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_830a11ea6b6083ed" hs_bindgen_830a11ea6b6083ed :: + 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:1287:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_830a11ea6b6083ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_2f560c79d25effc6" hs_bindgen_2f560c79d25effc6 :: + 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:1292: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_2f560c79d25effc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_c9cbc4ccdcf46deb" hs_bindgen_c9cbc4ccdcf46deb :: + 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:1294: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_c9cbc4ccdcf46deb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_c7a5481a17a71395" hs_bindgen_c7a5481a17a71395 :: + 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:1299: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_c7a5481a17a71395 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_0a3caae1f360c619" hs_bindgen_0a3caae1f360c619 :: + 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_0a3caae1f360c619 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1301: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_0a3caae1f360c619 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_db7785632e711f22" hs_bindgen_db7785632e711f22 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1304: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_db7785632e711f22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_6db2f1d78b76f833" hs_bindgen_6db2f1d78b76f833 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1306: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_6db2f1d78b76f833 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_9f6e1dd9bb4737a1" hs_bindgen_9f6e1dd9bb4737a1 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1308: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_9f6e1dd9bb4737a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_61eeff4d1784b207" hs_bindgen_61eeff4d1784b207 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1310: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_61eeff4d1784b207 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_20a13842ce1d5fa2" hs_bindgen_20a13842ce1d5fa2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1312: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_20a13842ce1d5fa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_b147020fb1dd2bdc" hs_bindgen_b147020fb1dd2bdc :: + 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:1315: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_b147020fb1dd2bdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_65ebf1cc2014e633" hs_bindgen_65ebf1cc2014e633 :: + 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:1317: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_65ebf1cc2014e633 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_545c44041ba89fde" hs_bindgen_545c44041ba89fde :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1320: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_545c44041ba89fde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_e3ea2729ad2361c1" hs_bindgen_e3ea2729ad2361c1 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1322: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_e3ea2729ad2361c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_65af1f9398eed206" hs_bindgen_65af1f9398eed206 :: + 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:1328: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_65af1f9398eed206 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_137e7a7eb34de586" hs_bindgen_137e7a7eb34de586 :: + 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:1331: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_137e7a7eb34de586 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_d5ddd4f67d766ac9" hs_bindgen_d5ddd4f67d766ac9 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1334: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_d5ddd4f67d766ac9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_efefe5eeb3f43bf2" hs_bindgen_efefe5eeb3f43bf2 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1337: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_efefe5eeb3f43bf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_7c05d61dfb13bf7e" hs_bindgen_7c05d61dfb13bf7e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1339: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_7c05d61dfb13bf7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_9d7c338dfd07459b" hs_bindgen_9d7c338dfd07459b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1341: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_9d7c338dfd07459b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_c0221cb1f20021a6" hs_bindgen_c0221cb1f20021a6 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1343: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_c0221cb1f20021a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_cb8692d216e4acb6" hs_bindgen_cb8692d216e4acb6 :: + 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:1358: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_cb8692d216e4acb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_9e60348fed354810" hs_bindgen_9e60348fed354810 :: + 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:1372: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_9e60348fed354810 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_00253f4a5c9f741b" hs_bindgen_00253f4a5c9f741b :: + 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:1390: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_00253f4a5c9f741b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_b176cf5f32fe4487" hs_bindgen_b176cf5f32fe4487 :: + 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:1405: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_b176cf5f32fe4487 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_97e928ec65b8045e" hs_bindgen_97e928ec65b8045e :: + 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_97e928ec65b8045e + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1411: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_97e928ec65b8045e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_7dd007ceb17bf431" hs_bindgen_7dd007ceb17bf431 :: + 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_7dd007ceb17bf431 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1413: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_7dd007ceb17bf431 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_480f5c0801b8742a" hs_bindgen_480f5c0801b8742a :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1415: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_480f5c0801b8742a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_155d8bcf8695653f" hs_bindgen_155d8bcf8695653f :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1417: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_155d8bcf8695653f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_87e8c339ddd8c538" hs_bindgen_87e8c339ddd8c538 :: + 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_87e8c339ddd8c538 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1423: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_87e8c339ddd8c538 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_5c97b81814c19534" hs_bindgen_5c97b81814c19534 :: + 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_5c97b81814c19534 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1425: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_5c97b81814c19534 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_cf0ac16b150ecbe0" hs_bindgen_cf0ac16b150ecbe0 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1427: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_cf0ac16b150ecbe0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_391d017323a9dea5" hs_bindgen_391d017323a9dea5 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1429: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_391d017323a9dea5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_ecb7925a7955a982" hs_bindgen_ecb7925a7955a982 :: + 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_ecb7925a7955a982 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1435: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_ecb7925a7955a982 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_50e7385ee23351f2" hs_bindgen_50e7385ee23351f2 :: + 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_50e7385ee23351f2 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1437: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_50e7385ee23351f2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_5fec84d6371a6cf4" hs_bindgen_5fec84d6371a6cf4 :: + 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:1440: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_5fec84d6371a6cf4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_e937fcca4dfc8f67" hs_bindgen_e937fcca4dfc8f67 :: + 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:1443: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_e937fcca4dfc8f67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_8b96b33c46ac553e" hs_bindgen_8b96b33c46ac553e :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1449: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_8b96b33c46ac553e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_31e60f395a757ea1" hs_bindgen_31e60f395a757ea1 :: + 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:1452: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_31e60f395a757ea1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_33d1e2e802b19619" hs_bindgen_33d1e2e802b19619 :: + 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:1455: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_33d1e2e802b19619 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_f1473c3a62e581bb" hs_bindgen_f1473c3a62e581bb :: + 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:1458: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_f1473c3a62e581bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_50d55bed5f325c39" hs_bindgen_50d55bed5f325c39 :: + 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:1461: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_50d55bed5f325c39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_e166a7572cce29cf" hs_bindgen_e166a7572cce29cf :: + 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:1464: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_e166a7572cce29cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_cb935cb3a99ebdf1" hs_bindgen_cb935cb3a99ebdf1 :: + 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:1467: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_cb935cb3a99ebdf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_87c811b4355561c3" hs_bindgen_87c811b4355561c3 :: + 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:1471: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_87c811b4355561c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_4ab044115d7de94b" hs_bindgen_4ab044115d7de94b :: + 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:1475: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_4ab044115d7de94b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_cf8d403cd7b0bc17" hs_bindgen_cf8d403cd7b0bc17 :: + 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:1478: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_cf8d403cd7b0bc17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_000b6ed7db05f506" hs_bindgen_000b6ed7db05f506 :: + 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:1485: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_000b6ed7db05f506 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_28730dd2b393ce84" hs_bindgen_28730dd2b393ce84 :: + 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:1493: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_28730dd2b393ce84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_e2815f143136619c" hs_bindgen_e2815f143136619c :: + 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:1498: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_e2815f143136619c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_dc1e87f8fd95e040" hs_bindgen_dc1e87f8fd95e040 :: + 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:1501: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_dc1e87f8fd95e040 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_cb869e5ea1039471" hs_bindgen_cb869e5ea1039471 :: + 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_cb869e5ea1039471 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1504: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_cb869e5ea1039471 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_1d1a443926cb0061" hs_bindgen_1d1a443926cb0061 :: + 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:1517: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_1d1a443926cb0061 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_f16b74efe972956f" hs_bindgen_f16b74efe972956f :: + 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:1522: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_f16b74efe972956f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_42316571ae6c8221" hs_bindgen_42316571ae6c8221 :: + 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:1525: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_42316571ae6c8221 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_810566a8eed54334" hs_bindgen_810566a8eed54334 :: + 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_810566a8eed54334 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1528: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_810566a8eed54334 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_c38c3e8261539e77" hs_bindgen_c38c3e8261539e77 :: + 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:1540: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_c38c3e8261539e77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_64b8ddc94a7ad444" hs_bindgen_64b8ddc94a7ad444 :: + 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:1545: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_64b8ddc94a7ad444 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_54111b1fc0b38148" hs_bindgen_54111b1fc0b38148 :: + 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:1547: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_54111b1fc0b38148 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_ea75974aaf1821bc" hs_bindgen_ea75974aaf1821bc :: + 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_ea75974aaf1821bc + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1549: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_ea75974aaf1821bc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_e0f6254fb633cfa7" hs_bindgen_e0f6254fb633cfa7 :: + 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:1552: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_e0f6254fb633cfa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_c0cc09e9f2037a4a" hs_bindgen_c0cc09e9f2037a4a :: + 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:1560: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_c0cc09e9f2037a4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_185c023a0e03dee0" hs_bindgen_185c023a0e03dee0 :: + 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:1568: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_185c023a0e03dee0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_cad77e19d5381b96" hs_bindgen_cad77e19d5381b96 :: + 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_cad77e19d5381b96 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1570: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_cad77e19d5381b96 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_3031257df00bd32c" hs_bindgen_3031257df00bd32c :: + 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_3031257df00bd32c + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1571: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_3031257df00bd32c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_a043d73162a6d516" hs_bindgen_a043d73162a6d516 :: + 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:1579: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_a043d73162a6d516 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_46569d260badd4c8" hs_bindgen_46569d260badd4c8 :: + 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:1584: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_46569d260badd4c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_967cb6445860da3f" hs_bindgen_967cb6445860da3f :: + 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:1586: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_967cb6445860da3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_f66489f456a91d03" hs_bindgen_f66489f456a91d03 :: + 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:1589: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_f66489f456a91d03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_92af23f9995a8a61" hs_bindgen_92af23f9995a8a61 :: + 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:1591: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_92af23f9995a8a61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_074fa8747a7084c2" hs_bindgen_074fa8747a7084c2 :: + 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_074fa8747a7084c2 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1594: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_074fa8747a7084c2 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_c7be1de5fcce3a99" hs_bindgen_c7be1de5fcce3a99 :: + 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:1608: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_c7be1de5fcce3a99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_efda3aa36c0c0053" hs_bindgen_efda3aa36c0c0053 :: + 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:1613: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_efda3aa36c0c0053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_e9cd7287fe3cd16c" hs_bindgen_e9cd7287fe3cd16c :: + 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:1616: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_e9cd7287fe3cd16c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_5a793d3776d92bc6" hs_bindgen_5a793d3776d92bc6 :: + 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:1621: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_5a793d3776d92bc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_984ae42e0b9a513c" hs_bindgen_984ae42e0b9a513c :: + 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_984ae42e0b9a513c + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1625: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_984ae42e0b9a513c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_a3b71ba1be06e411" hs_bindgen_a3b71ba1be06e411 :: + 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:1638: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_a3b71ba1be06e411 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_c4598e28a14797aa" hs_bindgen_c4598e28a14797aa :: + 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:1643: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_c4598e28a14797aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_13100ba813fdd9f9" hs_bindgen_13100ba813fdd9f9 :: + 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:1646: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_13100ba813fdd9f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_8b6849934ef63ceb" hs_bindgen_8b6849934ef63ceb :: + 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_8b6849934ef63ceb + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1651: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_8b6849934ef63ceb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_5d980d0af8568e48" hs_bindgen_5d980d0af8568e48 :: + 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:1664: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_5d980d0af8568e48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_2b13be120b36291c" hs_bindgen_2b13be120b36291c :: + 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_2b13be120b36291c + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1671: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_2b13be120b36291c x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_2d74aaf4e82311ff" hs_bindgen_2d74aaf4e82311ff :: + 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_2d74aaf4e82311ff + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1686: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_2d74aaf4e82311ff x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_70b422547f334738" hs_bindgen_70b422547f334738 :: + 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_70b422547f334738 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1701: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_70b422547f334738 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_e4f2ccea6f0897a8" hs_bindgen_e4f2ccea6f0897a8 :: + 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:1702: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_e4f2ccea6f0897a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_f91da6a98b4c051f" hs_bindgen_f91da6a98b4c051f :: + 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:1707: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_f91da6a98b4c051f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_e644158e17140ae7" hs_bindgen_e644158e17140ae7 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1709: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_e644158e17140ae7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_4b2de9a84cf67c39" hs_bindgen_4b2de9a84cf67c39 :: + 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:1712: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_4b2de9a84cf67c39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_9da7a3293969b0d3" hs_bindgen_9da7a3293969b0d3 :: + 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:1713: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_9da7a3293969b0d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_6ef548bac806f6a7" hs_bindgen_6ef548bac806f6a7 :: + 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:1715: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_6ef548bac806f6a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_b5a0046d7ad4fdbf" hs_bindgen_b5a0046d7ad4fdbf :: + 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:1716: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_b5a0046d7ad4fdbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_ecad387a07d0bd38" hs_bindgen_ecad387a07d0bd38 :: + 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:1719: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_ecad387a07d0bd38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_f82777910a6a3fbe" hs_bindgen_f82777910a6a3fbe :: + 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:1721: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_f82777910a6a3fbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_7142e13461316902" hs_bindgen_7142e13461316902 :: + 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:1722: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_7142e13461316902 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_728140345da797ce" hs_bindgen_728140345da797ce :: + 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:1723: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_728140345da797ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_0ff2f49e66766798" hs_bindgen_0ff2f49e66766798 :: + 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:1725: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_0ff2f49e66766798 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_3050d02ec157eebe" hs_bindgen_3050d02ec157eebe :: + 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:1728: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_3050d02ec157eebe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_00628ff9b841da48" hs_bindgen_00628ff9b841da48 :: + 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:1730: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_00628ff9b841da48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_230f3f3a43ae6dd1" hs_bindgen_230f3f3a43ae6dd1 :: + 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:1733: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_230f3f3a43ae6dd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_4aeb3462b4f603fb" hs_bindgen_4aeb3462b4f603fb :: + 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:1737: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_4aeb3462b4f603fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_03e1747510203051" hs_bindgen_03e1747510203051 :: + 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:1740: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_03e1747510203051 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_b05df36aa5a65ab1" hs_bindgen_b05df36aa5a65ab1 :: + 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:1743: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_b05df36aa5a65ab1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_89d342675ad9d26f" hs_bindgen_89d342675ad9d26f :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1759: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_89d342675ad9d26f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_b83504861fd2248f" hs_bindgen_b83504861fd2248f :: + 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:1765: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_b83504861fd2248f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_da8e94ec0acebbc4" hs_bindgen_da8e94ec0acebbc4 :: + 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:1776: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_da8e94ec0acebbc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_a78d015afba265d7" hs_bindgen_a78d015afba265d7 :: + 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:1791: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_a78d015afba265d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_ae63c9585f4062b8" hs_bindgen_ae63c9585f4062b8 :: + 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:1799: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_ae63c9585f4062b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_5891717a243c35c9" hs_bindgen_5891717a243c35c9 :: + 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_5891717a243c35c9 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1801: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_5891717a243c35c9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_845c6216bd1c08d3" hs_bindgen_845c6216bd1c08d3 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1803: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_845c6216bd1c08d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_7025b14abaf797ae" hs_bindgen_7025b14abaf797ae :: + 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:1809: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_7025b14abaf797ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_be75d1ab0335c64b" hs_bindgen_be75d1ab0335c64b :: + 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:1816: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_be75d1ab0335c64b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_74e5f7842210e8dd" hs_bindgen_74e5f7842210e8dd :: + 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_74e5f7842210e8dd + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1834: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_74e5f7842210e8dd (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_3ced36acb220a561" hs_bindgen_3ced36acb220a561 :: + 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_3ced36acb220a561 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1843: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_3ced36acb220a561 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_90bf243f517f16d7" hs_bindgen_90bf243f517f16d7 :: + 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_90bf243f517f16d7 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1851: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_90bf243f517f16d7 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_5133568eeb66531c" hs_bindgen_5133568eeb66531c :: + 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_5133568eeb66531c + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1861: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_5133568eeb66531c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_550d150480ef63b5" hs_bindgen_550d150480ef63b5 :: + 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_550d150480ef63b5 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1880: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_550d150480ef63b5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_9ea848027b3501b8" hs_bindgen_9ea848027b3501b8 :: + 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:1887:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_9ea848027b3501b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_3c838dfbadebc4f5" hs_bindgen_3c838dfbadebc4f5 :: + 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:1893: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_3c838dfbadebc4f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_02ba144368ae861b" hs_bindgen_02ba144368ae861b :: + 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:1899: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_02ba144368ae861b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_27dea4af8bb5c459" hs_bindgen_27dea4af8bb5c459 :: + 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_27dea4af8bb5c459 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1912: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_27dea4af8bb5c459 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_6610a4ee339da14e" hs_bindgen_6610a4ee339da14e :: + 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:1920:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_6610a4ee339da14e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_e090aa832860ddf1" hs_bindgen_e090aa832860ddf1 :: + 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:1929: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_e090aa832860ddf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_4a4e5654ea6099fb" hs_bindgen_4a4e5654ea6099fb :: + 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:1940: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_4a4e5654ea6099fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_ac6da4ae14c451fd" hs_bindgen_ac6da4ae14c451fd :: + 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_ac6da4ae14c451fd + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1951: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_ac6da4ae14c451fd x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_ac513dc21bdee378" hs_bindgen_ac513dc21bdee378 :: + 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:1958:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_ac513dc21bdee378 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_89caeda961fd92ed" hs_bindgen_89caeda961fd92ed :: + 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_89caeda961fd92ed + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1961: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_89caeda961fd92ed x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_2e36c7971cba7f0e" hs_bindgen_2e36c7971cba7f0e :: + 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_2e36c7971cba7f0e + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1964: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_2e36c7971cba7f0e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_cfdd7d8b1b5c5b57" hs_bindgen_cfdd7d8b1b5c5b57 :: + 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:1976: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_cfdd7d8b1b5c5b57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_81cbee4c6a3b1e98" hs_bindgen_81cbee4c6a3b1e98 :: + 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:1984: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_81cbee4c6a3b1e98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_83406a968a5da6fb" hs_bindgen_83406a968a5da6fb :: + 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_83406a968a5da6fb + +{-| 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:1999: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_83406a968a5da6fb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_5c1a7386b3a4eb22" hs_bindgen_5c1a7386b3a4eb22 :: + 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_5c1a7386b3a4eb22 + +{-| 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:2018: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_5c1a7386b3a4eb22 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_4e0e77caf4795628" hs_bindgen_4e0e77caf4795628 :: + 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_4e0e77caf4795628 + +{-| 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:2034: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_4e0e77caf4795628 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_808e23ee3a541afb" hs_bindgen_808e23ee3a541afb :: + 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_808e23ee3a541afb + +{-| 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:2061: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_808e23ee3a541afb 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_2_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_dfce70c24a2e0c4b" hs_bindgen_dfce70c24a2e0c4b :: + 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:2079: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_dfce70c24a2e0c4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_c919ad46a3ceb2bf" hs_bindgen_c919ad46a3ceb2bf :: + 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:2100: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_c919ad46a3ceb2bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_2_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_962c729b892cbe96" hs_bindgen_962c729b892cbe96 :: + 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:2121: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_962c729b892cbe96 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0.hs new file mode 100644 index 00000000..7d4ba218 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_3_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:88: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 + +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:89: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:90: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:92: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:93: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:95: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:96: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:98: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:99: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:100: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:101: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:103: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:104: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:105: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:106: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:107: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:108: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:110: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:111: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:113: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:114: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:115: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:117: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:120: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' + +__defined at:__ @botan\/ffi.h:129:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:129: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:138:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:138: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:211:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:246:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:246: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:334:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:334: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:414:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:414: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:510:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:510: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:512: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:513: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:514: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:600: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:782:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:782: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:848:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:848: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1045:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1045: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:1058: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:1128: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:1129:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1259:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1259: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1495:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1495: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1519:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1519: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:1540:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1542:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1542: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1562:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1562: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1581:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1581: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1610: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:1610: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1640: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:1640: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1704:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1704: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1751: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 + +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:1752: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:1753: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:1754: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:1755: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:1756: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:1757: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:1758: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:1759: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:1760: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:1761: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1802:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1802: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1879:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1879: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1911:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1911: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:1951:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:1951: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:1953: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:1974: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:1974: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_3_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/FunPtr.hs new file mode 100644 index 00000000..0b905dcd --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/FunPtr.hs @@ -0,0 +1,8345 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_3_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_3_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_3_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f90bee4da5030a4f (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_35d91bdf551c122e (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_ed8552f79eafcde4 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9e95557036c23eb (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_d0e58023c06caed3 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_cec1243ca9341fba (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_555ef38d31e1eb71 (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_8ab3cf6f8d50576f (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_140f3aa2d3d7e4d3 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5b39f6246f574e3 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ebb021734d0ed34d (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_baf8bbb97fa58a21 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1533132bafd2f2e (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b4c91927a5ec64d (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb83c566d18d531a (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd6dd1c7293e9dbb (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9b6ba186688d417 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3168ef9f1b7af890 (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_3_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ea0ad4a74337170 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8cdfd3abdfa9b48f (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a4730a0d2438880 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e479cdbf9cba7b6 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3aa3dc2d187ad40f (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_817f32e9b4751466 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88ddfb164e41e537 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94efa38551857ba6 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_881a1b4644c83070 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b94f73ac6b6782f (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f39ea4a85ffa4719 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32b8b28111baf619 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7db2a0e6a5216392 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05f75d33b79be6b8 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff1c169c1fa7ce38 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e0e77644831cacb (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e27b7bf7c31ed16 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e94d3651c0035802 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7ae5b6803ffa3cb (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d830452c5b68557e (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b36cea72accb8d9 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9eef546c0a11cbc (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f6635129b7721d4 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e9414cc210961d0 (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_3_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4964a6d530b9d97f (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c02e0be660a5333c (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66fce9077e6a2e5e (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7fec081d0c995a34 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8fe49c96f5a0c2d4 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c33876acd835fc8 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c2c565e225d200dd (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9bd052c75cb5ea0c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c44577909c420416 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aba79dc8c15b07d0 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5482c0709a1faab6 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6a93543289f5703 (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_3_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0dfa2a4b997400bc (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11a623d13e6d8c8a (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2150f2e80e3ea35e (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2bca3e774e54c07 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d3bfc188296948c (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_3_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf0441fc240b967a (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b0944eb8337178c (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a86d0fce41971f65 (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_3_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb2066cdcb9ea843 (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_3_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41046ede41c28ce5 (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_3_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ab62b6567d96a96 (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_3_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73ccd898eeb207fc (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_3_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3051da27281afcbf (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_3_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f50a11de6adbabcb (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abb38595de8579a6 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_221894025fa905bf (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d20f61793a96145e (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_3_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2c2ced16139813a (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8c87b3172d8ba3a (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_3_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_02ebe9b9f60d8792 (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_3_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_171ba50c1f282b7e (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2b358dd78a0b01b9 (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_3_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd270ee00af068b8 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30584522bc927aed (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_236c5ccc62fca5d7 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd8dd80823a2cecd (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50e07556952c443e (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d8d10f6053af3730 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_256b6c264240cde3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86b35969aa98b5c8 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59e375a4858a6a63 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c49b3b7e3070740 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_793dabd587376d27 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b00c29e93d3ef67 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a26866a3c5fff553 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77150488f558069b (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_359b7e8d9b83299f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b049a04d299bf91 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7762e2cc11a8591 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_369b6d9ae3790d16 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9549ea898d64cbc8 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82d2e4879e2017c3 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f08e8f078c461a79 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_43bf9e5d1a9e03b7 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77ce6a2205128a96 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b99a6a239a9e4199 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1560bf08479b89e2 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f34347ff00d36431 (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_3_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_074b93d9a369961a (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_3_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1726aa70e968a3e7 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86ae341b1e07fcb4 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9fedd29b4da13165 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45257b9c181ac812 (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_3_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6b96d8571c0a6f7c (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9064ff12e03fe988 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a91f8512fc66784 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38491617ba9b268f (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_254d5fafb5ac74cb (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_3_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_952b48d1a654aef2 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e9660d1744343a8 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5a43613e6598231 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a8d22b3bfcd499d (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a4b074d1d5dfe6d (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a3fe0c506ba7a75 (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_3_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4ef39d45eef40486 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18e89d63c817dad7 (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_3_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b89ff07edc87f8d (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c10bfdbba0dabb0b (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbc9129ed7d496db (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6336f090208f51b5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56feb2253153576d (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_3_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0bcc8c7036acc1e (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4b80ac477ce916b (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_3_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ca27c0d4a05e632 (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_3_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15cb7b052bf65c98 (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_3_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37cc6bd8a9bdc474 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f41241a7df39dd9d (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79d78edbda708511 (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_3_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8fc9c1b457b8c44b (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_3_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dd857c3c8b6cdf62 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30c6f4f2f11df9a5 (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_3_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3cb7956e62819e44 (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_3_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_46ddf3b586cfc107 (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_3_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40ebd1f7721c79e4 (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_3_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dd42797bc9829b10 (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_3_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c35af3f59aa0b27 (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_3_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1ead5d95f397dac (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_3_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_464811f6d180ff55 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20bda3fa264d6b2d (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e036e023f30aac1d (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39f34928c1b0ef5b (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_3_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_46115faae3ccce7b (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_3_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6ff76ccc69ebdda (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efb3431e3ca1150f (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4d0cd22caa20e6d (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78fb667fa219f56e (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1663bd36f3542fa1 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6824ade4199db23 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e32621f989893d38 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b51ec15a72c58b2 (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_3_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_299e50f81a7cc102 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a7d892fd6678829 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90ef58fe65bec96e (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e128403fb8fba9fd (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_afd97aea9022abee (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_799f5d706f4e4c61 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b74028c5eaf6aab (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_3_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d79e28fc2270333a (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6b1eec7f93cde967 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a16cb81456007a3 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae3c5703b326e25c (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_3_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68b8564d5c6d11a8 (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_3_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2cc4a88ddd77625 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44328b9adbe1dd43 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbc95ca923954acc (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66946c76669a90b2 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52d60198d5a8207d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_893d052160e53fed (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_3_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_000b1d862f19bea1 (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_3_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5adda7aabf2e5e93 (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_3_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a653efb2ad000f9 (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_3_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64e0cfe18c9e43f4 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6df2efc892e659c7 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ae1d0c3bc97432a (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_632c00ae90c5dfd1 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c78ebeefe41aeb1 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68c8fdcd2e87cc2b (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e990df41aa75e2c (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e81681a9bed0aa0 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c8dcc2f878d2e31 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75340f0a92dc8715 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_979a5652a2204741 (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_3_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78c13921f93f8ea8 (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_3_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b465cb7bb86c8c14 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a40b325701ed528 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a1a57d9060c7c79 (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_3_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56bb5776c21c50e9 (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_3_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_992acca085c0633b (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39695024e9ada083 (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_3_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87a9fd1f2039cfb4 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2cc25a2d31865d3 (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_3_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a092c7301bf41db5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_806314c73138481a (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_3_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f85f886aa2df9342 (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_3_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_874c6d0a2d335c9b (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_3_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bde7dd8c29369795 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d8f0b2dc906b1cd (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_3_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d62b0dd74642b2e8 (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_3_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e165a56f57a2a0c2 (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_3_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dfdd467e7a08c308 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53747c0b71fb351b (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_3_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92d9a2bbb776b303 (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_3_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_840c24ade0a38e9f (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_3_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57dad89b58a0a56c (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68c8ffe41e47cc80 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b5f5209dcccd0c8 (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_3_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_324844132bb7f377 (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_3_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c75cbfbce0022f8b (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_3_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_370e3f88f496f3fa (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b9e2f832f3949d9 (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_3_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc47373d66c7a6d4 (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_3_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7dd57789cfd76969 (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_3_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_660483946245b35d (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8397568670c62c90 (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_3_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22494f457af5369e (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_3_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa11bb8b302f5a50 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8fd48be38c0215ee (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_3_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2b13d24c7b92211c (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_3_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73a711a06d50eeb3 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ecabd05647739ed (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_3_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87409e9741ebb06e (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_3_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a6817cfb16ae492 (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_3_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d0edd4dd522d0bf (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_3_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9cd7d22ba84458ae (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71aa5c33da0b026d (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_3_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4c22f66ae661b50 (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_3_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04e312fcec04828e (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f3582c863ff0668 (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_3_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abf168f19f44f6e0 (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_3_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca868a159797e7dc (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b43c637d0b84671 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7807c8c338a7dc0d (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_680a271871fd898f (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c68f6d1c1b180e15 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a94e6cfb7daac21 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b83b9ef01593f721 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5673e63f6e73daf (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e388f96246e175f (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_3_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e992cf15513bbc6b (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_3_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82b2b242a65cb379 (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_3_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_300f4b33f7a7073c (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_3_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a657e5ed597c7ac6 (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_3_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f03ca947028ecd6 (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_3_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8410aa27e4cea117 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e71bade16eb8823e (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_3_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f88f37e1075bcc92 (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_3_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e40a4c9395c3ba9 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_703cbc3e6425dd87 (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_3_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d00e8872a2fec56 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6e2456e3d8fc12f (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47b4a9c01df91e91 (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_3_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_4156f875f3268fd6 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6969acd867f2a885 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c73888844b31c07b (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5c7a941deed5a40 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36cbb8d54a562fbc (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b8999cd78ed5f4e (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_3_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20f072e8e167bda7 (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_3_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ac61ec91c926904e (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_3_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c81bf3eaa92a5d4 (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_3_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab7700bf49446481 (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_3_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3d434657521a35c (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_3_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93997e1cc4304a07 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ba9b55ebf3e9af8 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_80adda0fe2012ba1 (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_3_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea2c3df22bbb054a (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_3_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b513d39299fe943a (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b77131566be87ee5 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a706737cf5a79aff (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bc8d1870693e302 (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_3_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_479c8f33ad021497 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ae3e99c2d5c7b5a (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_3_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d0f8930be2401ca (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_3_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10947f28a3dc6731 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97fb82b7a24fc8ac (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c194fc4f9aefc185 (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_3_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08f0d5753d5dd7de (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_3_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ccc20972a242d4c (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_3_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c4c89eab0adbe70 (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_3_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ccc6216f11f2fd76 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce4b0ee1f3a7ca50 (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_3_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b78fadfbc89ebe1 (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;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_f90bee4da5030a4f" hs_bindgen_f90bee4da5030a4f :: + 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:144: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_f90bee4da5030a4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_35d91bdf551c122e" hs_bindgen_35d91bdf551c122e :: + 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:153: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_35d91bdf551c122e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_ed8552f79eafcde4" hs_bindgen_ed8552f79eafcde4 :: + 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:160: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_ed8552f79eafcde4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_a9e95557036c23eb" hs_bindgen_a9e95557036c23eb :: + 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:166: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_a9e95557036c23eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_d0e58023c06caed3" hs_bindgen_d0e58023c06caed3 :: + 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:171: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_d0e58023c06caed3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_cec1243ca9341fba" hs_bindgen_cec1243ca9341fba :: + 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:176: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_cec1243ca9341fba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_555ef38d31e1eb71" hs_bindgen_555ef38d31e1eb71 :: + 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:181: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_555ef38d31e1eb71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_8ab3cf6f8d50576f" hs_bindgen_8ab3cf6f8d50576f :: + 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:186: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_8ab3cf6f8d50576f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_140f3aa2d3d7e4d3" hs_bindgen_140f3aa2d3d7e4d3 :: + 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:192: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_140f3aa2d3d7e4d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_f5b39f6246f574e3" hs_bindgen_f5b39f6246f574e3 :: + 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:197: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_f5b39f6246f574e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_ebb021734d0ed34d" hs_bindgen_ebb021734d0ed34d :: + 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:203: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_ebb021734d0ed34d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_baf8bbb97fa58a21" hs_bindgen_baf8bbb97fa58a21 :: + 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:209: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_baf8bbb97fa58a21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_c1533132bafd2f2e" hs_bindgen_c1533132bafd2f2e :: + 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:221: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_c1533132bafd2f2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_9b4c91927a5ec64d" hs_bindgen_9b4c91927a5ec64d :: + 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:231: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_9b4c91927a5ec64d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_eb83c566d18d531a" hs_bindgen_eb83c566d18d531a :: + 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:236: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_eb83c566d18d531a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_cd6dd1c7293e9dbb" hs_bindgen_cd6dd1c7293e9dbb :: + 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:241: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_cd6dd1c7293e9dbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_e9b6ba186688d417" hs_bindgen_e9b6ba186688d417 :: + 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:258: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_e9b6ba186688d417 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_3168ef9f1b7af890" hs_bindgen_3168ef9f1b7af890 :: + 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:270: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_3168ef9f1b7af890 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_5ea0ad4a74337170" hs_bindgen_5ea0ad4a74337170 :: + 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:284: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_5ea0ad4a74337170 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_8cdfd3abdfa9b48f" hs_bindgen_8cdfd3abdfa9b48f :: + 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:292: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_8cdfd3abdfa9b48f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_4a4730a0d2438880" hs_bindgen_4a4730a0d2438880 :: + 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:302: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_4a4730a0d2438880 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_3e479cdbf9cba7b6" hs_bindgen_3e479cdbf9cba7b6 :: + 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:312: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_3e479cdbf9cba7b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_3aa3dc2d187ad40f" hs_bindgen_3aa3dc2d187ad40f :: + 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:322: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_3aa3dc2d187ad40f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_817f32e9b4751466" hs_bindgen_817f32e9b4751466 :: + 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:329: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_817f32e9b4751466 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_88ddfb164e41e537" hs_bindgen_88ddfb164e41e537 :: + 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:343: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_88ddfb164e41e537 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_94efa38551857ba6" hs_bindgen_94efa38551857ba6 :: + 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:351: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_94efa38551857ba6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_881a1b4644c83070" hs_bindgen_881a1b4644c83070 :: + 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:359: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_881a1b4644c83070 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_8b94f73ac6b6782f" hs_bindgen_8b94f73ac6b6782f :: + 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:367: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_8b94f73ac6b6782f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_f39ea4a85ffa4719" hs_bindgen_f39ea4a85ffa4719 :: + 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:376: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_f39ea4a85ffa4719 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_32b8b28111baf619" hs_bindgen_32b8b28111baf619 :: + 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:386: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_32b8b28111baf619 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_7db2a0e6a5216392" hs_bindgen_7db2a0e6a5216392 :: + 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:394: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_7db2a0e6a5216392 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_05f75d33b79be6b8" hs_bindgen_05f75d33b79be6b8 :: + 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:401: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_05f75d33b79be6b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_ff1c169c1fa7ce38" hs_bindgen_ff1c169c1fa7ce38 :: + 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:409: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_ff1c169c1fa7ce38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_2e0e77644831cacb" hs_bindgen_2e0e77644831cacb :: + 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:424: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_2e0e77644831cacb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_7e27b7bf7c31ed16" hs_bindgen_7e27b7bf7c31ed16 :: + 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:432: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_7e27b7bf7c31ed16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_e94d3651c0035802" hs_bindgen_e94d3651c0035802 :: + 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:441: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_e94d3651c0035802 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_b7ae5b6803ffa3cb" hs_bindgen_b7ae5b6803ffa3cb :: + 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:450: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_b7ae5b6803ffa3cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_d830452c5b68557e" hs_bindgen_d830452c5b68557e :: + 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:459: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_d830452c5b68557e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_9b36cea72accb8d9" hs_bindgen_9b36cea72accb8d9 :: + 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:469: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_9b36cea72accb8d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_d9eef546c0a11cbc" hs_bindgen_d9eef546c0a11cbc :: + 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:477: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_d9eef546c0a11cbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_2f6635129b7721d4" hs_bindgen_2f6635129b7721d4 :: + 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:485: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_2f6635129b7721d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_7e9414cc210961d0" hs_bindgen_7e9414cc210961d0 :: + 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:495: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_7e9414cc210961d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_4964a6d530b9d97f" hs_bindgen_4964a6d530b9d97f :: + 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:505: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_4964a6d530b9d97f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_c02e0be660a5333c" hs_bindgen_c02e0be660a5333c :: + 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:519: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_c02e0be660a5333c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_66fce9077e6a2e5e" hs_bindgen_66fce9077e6a2e5e :: + 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:524: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_66fce9077e6a2e5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_7fec081d0c995a34" hs_bindgen_7fec081d0c995a34 :: + 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:529: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_7fec081d0c995a34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_8fe49c96f5a0c2d4" hs_bindgen_8fe49c96f5a0c2d4 :: + 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:534: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_8fe49c96f5a0c2d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_5c33876acd835fc8" hs_bindgen_5c33876acd835fc8 :: + 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:539: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_5c33876acd835fc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_c2c565e225d200dd" hs_bindgen_c2c565e225d200dd :: + 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:544: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_c2c565e225d200dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_9bd052c75cb5ea0c" hs_bindgen_9bd052c75cb5ea0c :: + 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:549: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_9bd052c75cb5ea0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_c44577909c420416" hs_bindgen_c44577909c420416 :: + 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:555: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_c44577909c420416 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_aba79dc8c15b07d0" hs_bindgen_aba79dc8c15b07d0 :: + 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:561: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_aba79dc8c15b07d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_5482c0709a1faab6" hs_bindgen_5482c0709a1faab6 :: + 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:567: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_5482c0709a1faab6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_e6a93543289f5703" hs_bindgen_e6a93543289f5703 :: + 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:573: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_e6a93543289f5703 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_0dfa2a4b997400bc" hs_bindgen_0dfa2a4b997400bc :: + 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:578: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_0dfa2a4b997400bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_11a623d13e6d8c8a" hs_bindgen_11a623d13e6d8c8a :: + 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:588: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_11a623d13e6d8c8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_2150f2e80e3ea35e" hs_bindgen_2150f2e80e3ea35e :: + 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:593: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_2150f2e80e3ea35e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_f2bca3e774e54c07" hs_bindgen_f2bca3e774e54c07 :: + 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:598: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_f2bca3e774e54c07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_4d3bfc188296948c" hs_bindgen_4d3bfc188296948c :: + 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:606: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_4d3bfc188296948c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_bf0441fc240b967a" hs_bindgen_bf0441fc240b967a :: + 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:618: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_bf0441fc240b967a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_4b0944eb8337178c" hs_bindgen_4b0944eb8337178c :: + 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:624: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_4b0944eb8337178c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_a86d0fce41971f65" hs_bindgen_a86d0fce41971f65 :: + 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:643: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_a86d0fce41971f65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_eb2066cdcb9ea843" hs_bindgen_eb2066cdcb9ea843 :: + 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:676: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_eb2066cdcb9ea843 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_41046ede41c28ce5" hs_bindgen_41046ede41c28ce5 :: + 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:700: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_41046ede41c28ce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_8ab62b6567d96a96" hs_bindgen_8ab62b6567d96a96 :: + 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:727: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_8ab62b6567d96a96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_73ccd898eeb207fc" hs_bindgen_73ccd898eeb207fc :: + 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:746: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_73ccd898eeb207fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_3051da27281afcbf" hs_bindgen_3051da27281afcbf :: + 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:769: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_3051da27281afcbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_f50a11de6adbabcb" hs_bindgen_f50a11de6adbabcb :: + 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:787: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_f50a11de6adbabcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_abb38595de8579a6" hs_bindgen_abb38595de8579a6 :: + 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:793: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_abb38595de8579a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_221894025fa905bf" hs_bindgen_221894025fa905bf :: + 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:799: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_221894025fa905bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_d20f61793a96145e" hs_bindgen_d20f61793a96145e :: + 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:804: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_d20f61793a96145e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_a2c2ced16139813a" hs_bindgen_a2c2ced16139813a :: + 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:810: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_a2c2ced16139813a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_a8c87b3172d8ba3a" hs_bindgen_a8c87b3172d8ba3a :: + 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:816: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_a8c87b3172d8ba3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_02ebe9b9f60d8792" hs_bindgen_02ebe9b9f60d8792 :: + 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:822: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_02ebe9b9f60d8792 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_171ba50c1f282b7e" hs_bindgen_171ba50c1f282b7e :: + 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:830: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_171ba50c1f282b7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_2b358dd78a0b01b9" hs_bindgen_2b358dd78a0b01b9 :: + 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:840: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_2b358dd78a0b01b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_fd270ee00af068b8" hs_bindgen_fd270ee00af068b8 :: + 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:853: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_fd270ee00af068b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_30584522bc927aed" hs_bindgen_30584522bc927aed :: + 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:859: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_30584522bc927aed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_236c5ccc62fca5d7" hs_bindgen_236c5ccc62fca5d7 :: + 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:864: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_236c5ccc62fca5d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_fd8dd80823a2cecd" hs_bindgen_fd8dd80823a2cecd :: + 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:869: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_fd8dd80823a2cecd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_50e07556952c443e" hs_bindgen_50e07556952c443e :: + 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:874: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_50e07556952c443e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_d8d10f6053af3730" hs_bindgen_d8d10f6053af3730 :: + 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:879: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_d8d10f6053af3730 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_256b6c264240cde3" hs_bindgen_256b6c264240cde3 :: + 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:884: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_256b6c264240cde3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_86b35969aa98b5c8" hs_bindgen_86b35969aa98b5c8 :: + 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:889: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_86b35969aa98b5c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_59e375a4858a6a63" hs_bindgen_59e375a4858a6a63 :: + 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:895: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_59e375a4858a6a63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_0c49b3b7e3070740" hs_bindgen_0c49b3b7e3070740 :: + 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:900: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_0c49b3b7e3070740 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_793dabd587376d27" hs_bindgen_793dabd587376d27 :: + 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:905: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_793dabd587376d27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_0b00c29e93d3ef67" hs_bindgen_0b00c29e93d3ef67 :: + 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:910: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_0b00c29e93d3ef67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_a26866a3c5fff553" hs_bindgen_a26866a3c5fff553 :: + 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:915: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_a26866a3c5fff553 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_77150488f558069b" hs_bindgen_77150488f558069b :: + 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:920: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_77150488f558069b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_359b7e8d9b83299f" hs_bindgen_359b7e8d9b83299f :: + 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:927: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_359b7e8d9b83299f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_8b049a04d299bf91" hs_bindgen_8b049a04d299bf91 :: + 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:932: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_8b049a04d299bf91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_e7762e2cc11a8591" hs_bindgen_e7762e2cc11a8591 :: + 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:934: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_e7762e2cc11a8591 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_369b6d9ae3790d16" hs_bindgen_369b6d9ae3790d16 :: + 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:936: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_369b6d9ae3790d16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_9549ea898d64cbc8" hs_bindgen_9549ea898d64cbc8 :: + 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:938: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_9549ea898d64cbc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_82d2e4879e2017c3" hs_bindgen_82d2e4879e2017c3 :: + 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:939: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_82d2e4879e2017c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_f08e8f078c461a79" hs_bindgen_f08e8f078c461a79 :: + 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:941: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_f08e8f078c461a79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_43bf9e5d1a9e03b7" hs_bindgen_43bf9e5d1a9e03b7 :: + 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:942: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_43bf9e5d1a9e03b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_77ce6a2205128a96" hs_bindgen_77ce6a2205128a96 :: + 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:944: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_77ce6a2205128a96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_b99a6a239a9e4199" hs_bindgen_b99a6a239a9e4199 :: + 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:945: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_b99a6a239a9e4199 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_1560bf08479b89e2" hs_bindgen_1560bf08479b89e2 :: + 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:946: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_1560bf08479b89e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_f34347ff00d36431" hs_bindgen_f34347ff00d36431 :: + 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:949: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_f34347ff00d36431 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_074b93d9a369961a" hs_bindgen_074b93d9a369961a :: + 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:952: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_074b93d9a369961a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_1726aa70e968a3e7" hs_bindgen_1726aa70e968a3e7 :: + 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:959: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_1726aa70e968a3e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_86ae341b1e07fcb4" hs_bindgen_86ae341b1e07fcb4 :: + 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:966: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_86ae341b1e07fcb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_9fedd29b4da13165" hs_bindgen_9fedd29b4da13165 :: + 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:971: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_9fedd29b4da13165 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_45257b9c181ac812" hs_bindgen_45257b9c181ac812 :: + 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:975: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_45257b9c181ac812 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_6b96d8571c0a6f7c" hs_bindgen_6b96d8571c0a6f7c :: + 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:977: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_6b96d8571c0a6f7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_9064ff12e03fe988" hs_bindgen_9064ff12e03fe988 :: + 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:978: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_9064ff12e03fe988 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_9a91f8512fc66784" hs_bindgen_9a91f8512fc66784 :: + 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:980: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_9a91f8512fc66784 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_38491617ba9b268f" hs_bindgen_38491617ba9b268f :: + 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:982: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_38491617ba9b268f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_254d5fafb5ac74cb" hs_bindgen_254d5fafb5ac74cb :: + 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:985: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_254d5fafb5ac74cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_952b48d1a654aef2" hs_bindgen_952b48d1a654aef2 :: + 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:987: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_952b48d1a654aef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_9e9660d1744343a8" hs_bindgen_9e9660d1744343a8 :: + 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:994: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_9e9660d1744343a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_b5a43613e6598231" hs_bindgen_b5a43613e6598231 :: + 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:1001: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_b5a43613e6598231 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_2a8d22b3bfcd499d" hs_bindgen_2a8d22b3bfcd499d :: + 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:1006: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_2a8d22b3bfcd499d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_0a4b074d1d5dfe6d" hs_bindgen_0a4b074d1d5dfe6d :: + 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:1011: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_0a4b074d1d5dfe6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_7a3fe0c506ba7a75" hs_bindgen_7a3fe0c506ba7a75 :: + 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:1029: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_7a3fe0c506ba7a75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_4ef39d45eef40486" hs_bindgen_4ef39d45eef40486 :: + 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:1040: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_4ef39d45eef40486 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_18e89d63c817dad7" hs_bindgen_18e89d63c817dad7 :: + 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:1056: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_18e89d63c817dad7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_8b89ff07edc87f8d" hs_bindgen_8b89ff07edc87f8d :: + 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:1060: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_8b89ff07edc87f8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_c10bfdbba0dabb0b" hs_bindgen_c10bfdbba0dabb0b :: + 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:1063: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_c10bfdbba0dabb0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_cbc9129ed7d496db" hs_bindgen_cbc9129ed7d496db :: + 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:1065: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_cbc9129ed7d496db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_6336f090208f51b5" hs_bindgen_6336f090208f51b5 :: + 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:1067: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_6336f090208f51b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_56feb2253153576d" hs_bindgen_56feb2253153576d :: + 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:1069: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_56feb2253153576d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_c0bcc8c7036acc1e" hs_bindgen_c0bcc8c7036acc1e :: + 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:1071: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_c0bcc8c7036acc1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_a4b80ac477ce916b" hs_bindgen_a4b80ac477ce916b :: + 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:1091: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_a4b80ac477ce916b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_5ca27c0d4a05e632" hs_bindgen_5ca27c0d4a05e632 :: + 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:1113: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_5ca27c0d4a05e632 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_15cb7b052bf65c98" hs_bindgen_15cb7b052bf65c98 :: + 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:1121: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_15cb7b052bf65c98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_37cc6bd8a9bdc474" hs_bindgen_37cc6bd8a9bdc474 :: + 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:1126: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_37cc6bd8a9bdc474 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_f41241a7df39dd9d" hs_bindgen_f41241a7df39dd9d :: + 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:1138: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_f41241a7df39dd9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_79d78edbda708511" hs_bindgen_79d78edbda708511 :: + 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:1143: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_79d78edbda708511 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_8fc9c1b457b8c44b" hs_bindgen_8fc9c1b457b8c44b :: + 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:1148: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_8fc9c1b457b8c44b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_dd857c3c8b6cdf62" hs_bindgen_dd857c3c8b6cdf62 :: + 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:1150: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_dd857c3c8b6cdf62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_30c6f4f2f11df9a5" hs_bindgen_30c6f4f2f11df9a5 :: + 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:1157: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_30c6f4f2f11df9a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_3cb7956e62819e44" hs_bindgen_3cb7956e62819e44 :: + 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:1172: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_3cb7956e62819e44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_46ddf3b586cfc107" hs_bindgen_46ddf3b586cfc107 :: + 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:1187: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_46ddf3b586cfc107 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_40ebd1f7721c79e4" hs_bindgen_40ebd1f7721c79e4 :: + 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:1204: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_40ebd1f7721c79e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_dd42797bc9829b10" hs_bindgen_dd42797bc9829b10 :: + 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:1219: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_dd42797bc9829b10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_6c35af3f59aa0b27" hs_bindgen_6c35af3f59aa0b27 :: + 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:1235: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_6c35af3f59aa0b27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_b1ead5d95f397dac" hs_bindgen_b1ead5d95f397dac :: + 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:1250: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_b1ead5d95f397dac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_464811f6d180ff55" hs_bindgen_464811f6d180ff55 :: + 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:1261: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_464811f6d180ff55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_20bda3fa264d6b2d" hs_bindgen_20bda3fa264d6b2d :: + 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:1263: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_20bda3fa264d6b2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_e036e023f30aac1d" hs_bindgen_e036e023f30aac1d :: + 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:1265: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_e036e023f30aac1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_39f34928c1b0ef5b" hs_bindgen_39f34928c1b0ef5b :: + 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:1270: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_39f34928c1b0ef5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_46115faae3ccce7b" hs_bindgen_46115faae3ccce7b :: + 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:1275: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_46115faae3ccce7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_c6ff76ccc69ebdda" hs_bindgen_c6ff76ccc69ebdda :: + 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:1277: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_c6ff76ccc69ebdda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_efb3431e3ca1150f" hs_bindgen_efb3431e3ca1150f :: + 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:1282: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_efb3431e3ca1150f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_e4d0cd22caa20e6d" hs_bindgen_e4d0cd22caa20e6d :: + 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:1284: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_e4d0cd22caa20e6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_78fb667fa219f56e" hs_bindgen_78fb667fa219f56e :: + 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:1287: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_78fb667fa219f56e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_1663bd36f3542fa1" hs_bindgen_1663bd36f3542fa1 :: + 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:1292: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_1663bd36f3542fa1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_d6824ade4199db23" hs_bindgen_d6824ade4199db23 :: + 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:1297: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_d6824ade4199db23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_e32621f989893d38" hs_bindgen_e32621f989893d38 :: + 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:1299: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_e32621f989893d38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_5b51ec15a72c58b2" hs_bindgen_5b51ec15a72c58b2 :: + 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:1304: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_5b51ec15a72c58b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_299e50f81a7cc102" hs_bindgen_299e50f81a7cc102 :: + 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:1306: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_299e50f81a7cc102 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_2a7d892fd6678829" hs_bindgen_2a7d892fd6678829 :: + 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:1309: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_2a7d892fd6678829 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_90ef58fe65bec96e" hs_bindgen_90ef58fe65bec96e :: + 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:1311: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_90ef58fe65bec96e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_e128403fb8fba9fd" hs_bindgen_e128403fb8fba9fd :: + 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:1313: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_e128403fb8fba9fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_afd97aea9022abee" hs_bindgen_afd97aea9022abee :: + 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:1315: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_afd97aea9022abee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_799f5d706f4e4c61" hs_bindgen_799f5d706f4e4c61 :: + 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:1317: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_799f5d706f4e4c61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_4b74028c5eaf6aab" hs_bindgen_4b74028c5eaf6aab :: + 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:1320: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_4b74028c5eaf6aab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_d79e28fc2270333a" hs_bindgen_d79e28fc2270333a :: + 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:1322: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_d79e28fc2270333a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_6b1eec7f93cde967" hs_bindgen_6b1eec7f93cde967 :: + 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:1325: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_6b1eec7f93cde967 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_6a16cb81456007a3" hs_bindgen_6a16cb81456007a3 :: + 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:1327: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_6a16cb81456007a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_ae3c5703b326e25c" hs_bindgen_ae3c5703b326e25c :: + 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:1333: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_ae3c5703b326e25c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_68b8564d5c6d11a8" hs_bindgen_68b8564d5c6d11a8 :: + 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:1336: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_68b8564d5c6d11a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_b2cc4a88ddd77625" hs_bindgen_b2cc4a88ddd77625 :: + 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:1339: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_b2cc4a88ddd77625 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_44328b9adbe1dd43" hs_bindgen_44328b9adbe1dd43 :: + 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:1342: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_44328b9adbe1dd43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_cbc95ca923954acc" hs_bindgen_cbc95ca923954acc :: + 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:1344: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_cbc95ca923954acc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_66946c76669a90b2" hs_bindgen_66946c76669a90b2 :: + 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:1346: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_66946c76669a90b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_52d60198d5a8207d" hs_bindgen_52d60198d5a8207d :: + 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:1348: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_52d60198d5a8207d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_893d052160e53fed" hs_bindgen_893d052160e53fed :: + 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:1363: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_893d052160e53fed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_000b1d862f19bea1" hs_bindgen_000b1d862f19bea1 :: + 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:1377: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_000b1d862f19bea1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_5adda7aabf2e5e93" hs_bindgen_5adda7aabf2e5e93 :: + 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:1395: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_5adda7aabf2e5e93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_6a653efb2ad000f9" hs_bindgen_6a653efb2ad000f9 :: + 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:1410: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_6a653efb2ad000f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_64e0cfe18c9e43f4" hs_bindgen_64e0cfe18c9e43f4 :: + 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:1416: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_64e0cfe18c9e43f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_6df2efc892e659c7" hs_bindgen_6df2efc892e659c7 :: + 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:1418: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_6df2efc892e659c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_0ae1d0c3bc97432a" hs_bindgen_0ae1d0c3bc97432a :: + 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:1420: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_0ae1d0c3bc97432a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_632c00ae90c5dfd1" hs_bindgen_632c00ae90c5dfd1 :: + 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:1422: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_632c00ae90c5dfd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_7c78ebeefe41aeb1" hs_bindgen_7c78ebeefe41aeb1 :: + 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:1428: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_7c78ebeefe41aeb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_68c8fdcd2e87cc2b" hs_bindgen_68c8fdcd2e87cc2b :: + 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:1430: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_68c8fdcd2e87cc2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_4e990df41aa75e2c" hs_bindgen_4e990df41aa75e2c :: + 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:1432: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_4e990df41aa75e2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_9e81681a9bed0aa0" hs_bindgen_9e81681a9bed0aa0 :: + 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:1434: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_9e81681a9bed0aa0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_5c8dcc2f878d2e31" hs_bindgen_5c8dcc2f878d2e31 :: + 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:1440: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_5c8dcc2f878d2e31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_75340f0a92dc8715" hs_bindgen_75340f0a92dc8715 :: + 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:1442: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_75340f0a92dc8715 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_979a5652a2204741" hs_bindgen_979a5652a2204741 :: + 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:1445: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_979a5652a2204741 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_78c13921f93f8ea8" hs_bindgen_78c13921f93f8ea8 :: + 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:1448: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_78c13921f93f8ea8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_b465cb7bb86c8c14" hs_bindgen_b465cb7bb86c8c14 :: + 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:1454: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_b465cb7bb86c8c14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_7a40b325701ed528" hs_bindgen_7a40b325701ed528 :: + 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:1457: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_7a40b325701ed528 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_7a1a57d9060c7c79" hs_bindgen_7a1a57d9060c7c79 :: + 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:1460: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_7a1a57d9060c7c79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_56bb5776c21c50e9" hs_bindgen_56bb5776c21c50e9 :: + 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:1463: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_56bb5776c21c50e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_992acca085c0633b" hs_bindgen_992acca085c0633b :: + 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:1466: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_992acca085c0633b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_39695024e9ada083" hs_bindgen_39695024e9ada083 :: + 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:1469: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_39695024e9ada083 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_87a9fd1f2039cfb4" hs_bindgen_87a9fd1f2039cfb4 :: + 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:1472: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_87a9fd1f2039cfb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_a2cc25a2d31865d3" hs_bindgen_a2cc25a2d31865d3 :: + 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:1476: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_a2cc25a2d31865d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_a092c7301bf41db5" hs_bindgen_a092c7301bf41db5 :: + 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:1480: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_a092c7301bf41db5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_806314c73138481a" hs_bindgen_806314c73138481a :: + 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:1483: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_806314c73138481a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_f85f886aa2df9342" hs_bindgen_f85f886aa2df9342 :: + 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:1490: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_f85f886aa2df9342 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_874c6d0a2d335c9b" hs_bindgen_874c6d0a2d335c9b :: + 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:1498: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_874c6d0a2d335c9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_bde7dd8c29369795" hs_bindgen_bde7dd8c29369795 :: + 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:1503: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_bde7dd8c29369795 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_3d8f0b2dc906b1cd" hs_bindgen_3d8f0b2dc906b1cd :: + 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:1506: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_3d8f0b2dc906b1cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_d62b0dd74642b2e8" hs_bindgen_d62b0dd74642b2e8 :: + 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:1509: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_d62b0dd74642b2e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_e165a56f57a2a0c2" hs_bindgen_e165a56f57a2a0c2 :: + 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:1522: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_e165a56f57a2a0c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_dfdd467e7a08c308" hs_bindgen_dfdd467e7a08c308 :: + 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:1527: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_dfdd467e7a08c308 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_53747c0b71fb351b" hs_bindgen_53747c0b71fb351b :: + 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:1530: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_53747c0b71fb351b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_92d9a2bbb776b303" hs_bindgen_92d9a2bbb776b303 :: + 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:1533: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_92d9a2bbb776b303 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_840c24ade0a38e9f" hs_bindgen_840c24ade0a38e9f :: + 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:1545: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_840c24ade0a38e9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_57dad89b58a0a56c" hs_bindgen_57dad89b58a0a56c :: + 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:1550: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_57dad89b58a0a56c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_68c8ffe41e47cc80" hs_bindgen_68c8ffe41e47cc80 :: + 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:1552: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_68c8ffe41e47cc80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_7b5f5209dcccd0c8" hs_bindgen_7b5f5209dcccd0c8 :: + 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:1554: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_7b5f5209dcccd0c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_324844132bb7f377" hs_bindgen_324844132bb7f377 :: + 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:1557: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_324844132bb7f377 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_c75cbfbce0022f8b" hs_bindgen_c75cbfbce0022f8b :: + 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:1565: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_c75cbfbce0022f8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_370e3f88f496f3fa" hs_bindgen_370e3f88f496f3fa :: + 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:1573: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_370e3f88f496f3fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_5b9e2f832f3949d9" hs_bindgen_5b9e2f832f3949d9 :: + 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:1575: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_5b9e2f832f3949d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_bc47373d66c7a6d4" hs_bindgen_bc47373d66c7a6d4 :: + 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:1576: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_bc47373d66c7a6d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_7dd57789cfd76969" hs_bindgen_7dd57789cfd76969 :: + 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:1584: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_7dd57789cfd76969 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_660483946245b35d" hs_bindgen_660483946245b35d :: + 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:1589: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_660483946245b35d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_8397568670c62c90" hs_bindgen_8397568670c62c90 :: + 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:1591: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_8397568670c62c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_22494f457af5369e" hs_bindgen_22494f457af5369e :: + 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:1594: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_22494f457af5369e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_fa11bb8b302f5a50" hs_bindgen_fa11bb8b302f5a50 :: + 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:1596: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_fa11bb8b302f5a50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_8fd48be38c0215ee" hs_bindgen_8fd48be38c0215ee :: + 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:1599: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_8fd48be38c0215ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_2b13d24c7b92211c" hs_bindgen_2b13d24c7b92211c :: + 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:1613: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_2b13d24c7b92211c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_73a711a06d50eeb3" hs_bindgen_73a711a06d50eeb3 :: + 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:1618: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_73a711a06d50eeb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_6ecabd05647739ed" hs_bindgen_6ecabd05647739ed :: + 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:1621: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_6ecabd05647739ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_87409e9741ebb06e" hs_bindgen_87409e9741ebb06e :: + 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:1626: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_87409e9741ebb06e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_0a6817cfb16ae492" hs_bindgen_0a6817cfb16ae492 :: + 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:1630: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_0a6817cfb16ae492 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_0d0edd4dd522d0bf" hs_bindgen_0d0edd4dd522d0bf :: + 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:1643: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_0d0edd4dd522d0bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_9cd7d22ba84458ae" hs_bindgen_9cd7d22ba84458ae :: + 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:1648: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_9cd7d22ba84458ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_71aa5c33da0b026d" hs_bindgen_71aa5c33da0b026d :: + 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:1651: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_71aa5c33da0b026d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_d4c22f66ae661b50" hs_bindgen_d4c22f66ae661b50 :: + 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:1656: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_d4c22f66ae661b50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_04e312fcec04828e" hs_bindgen_04e312fcec04828e :: + 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:1669: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_04e312fcec04828e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_9f3582c863ff0668" hs_bindgen_9f3582c863ff0668 :: + 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:1676: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_9f3582c863ff0668 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_abf168f19f44f6e0" hs_bindgen_abf168f19f44f6e0 :: + 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:1691: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_abf168f19f44f6e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_ca868a159797e7dc" hs_bindgen_ca868a159797e7dc :: + 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:1706: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_ca868a159797e7dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_0b43c637d0b84671" hs_bindgen_0b43c637d0b84671 :: + 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:1707: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_0b43c637d0b84671 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_7807c8c338a7dc0d" hs_bindgen_7807c8c338a7dc0d :: + 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:1712: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_7807c8c338a7dc0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_680a271871fd898f" hs_bindgen_680a271871fd898f :: + 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:1714: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_680a271871fd898f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_c68f6d1c1b180e15" hs_bindgen_c68f6d1c1b180e15 :: + 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:1717: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_c68f6d1c1b180e15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_0a94e6cfb7daac21" hs_bindgen_0a94e6cfb7daac21 :: + 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:1718: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_0a94e6cfb7daac21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_b83b9ef01593f721" hs_bindgen_b83b9ef01593f721 :: + 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:1720: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_b83b9ef01593f721 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_f5673e63f6e73daf" hs_bindgen_f5673e63f6e73daf :: + 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:1721: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_f5673e63f6e73daf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_0e388f96246e175f" hs_bindgen_0e388f96246e175f :: + 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:1724: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_0e388f96246e175f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_e992cf15513bbc6b" hs_bindgen_e992cf15513bbc6b :: + 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:1726: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_e992cf15513bbc6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_82b2b242a65cb379" hs_bindgen_82b2b242a65cb379 :: + 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:1727: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_82b2b242a65cb379 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_300f4b33f7a7073c" hs_bindgen_300f4b33f7a7073c :: + 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:1728: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_300f4b33f7a7073c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_a657e5ed597c7ac6" hs_bindgen_a657e5ed597c7ac6 :: + 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:1730: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_a657e5ed597c7ac6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_3f03ca947028ecd6" hs_bindgen_3f03ca947028ecd6 :: + 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:1733: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_3f03ca947028ecd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_8410aa27e4cea117" hs_bindgen_8410aa27e4cea117 :: + 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:1735: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_8410aa27e4cea117 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_e71bade16eb8823e" hs_bindgen_e71bade16eb8823e :: + 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:1738: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_e71bade16eb8823e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_f88f37e1075bcc92" hs_bindgen_f88f37e1075bcc92 :: + 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:1742: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_f88f37e1075bcc92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_0e40a4c9395c3ba9" hs_bindgen_0e40a4c9395c3ba9 :: + 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:1745: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_0e40a4c9395c3ba9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_703cbc3e6425dd87" hs_bindgen_703cbc3e6425dd87 :: + 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:1748: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_703cbc3e6425dd87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_9d00e8872a2fec56" hs_bindgen_9d00e8872a2fec56 :: + 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:1764: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_9d00e8872a2fec56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_c6e2456e3d8fc12f" hs_bindgen_c6e2456e3d8fc12f :: + 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:1770: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_c6e2456e3d8fc12f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_47b4a9c01df91e91" hs_bindgen_47b4a9c01df91e91 :: + 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:1781: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_47b4a9c01df91e91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_4156f875f3268fd6" hs_bindgen_4156f875f3268fd6 :: + 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:1796: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_4156f875f3268fd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_6969acd867f2a885" hs_bindgen_6969acd867f2a885 :: + 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:1804: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_6969acd867f2a885 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_c73888844b31c07b" hs_bindgen_c73888844b31c07b :: + 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:1806: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_c73888844b31c07b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_f5c7a941deed5a40" hs_bindgen_f5c7a941deed5a40 :: + 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:1808: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_f5c7a941deed5a40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_36cbb8d54a562fbc" hs_bindgen_36cbb8d54a562fbc :: + 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:1814: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_36cbb8d54a562fbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_0b8999cd78ed5f4e" hs_bindgen_0b8999cd78ed5f4e :: + 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:1821: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_0b8999cd78ed5f4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_20f072e8e167bda7" hs_bindgen_20f072e8e167bda7 :: + 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:1839: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_20f072e8e167bda7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_ac61ec91c926904e" hs_bindgen_ac61ec91c926904e :: + 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:1848: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_ac61ec91c926904e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_3c81bf3eaa92a5d4" hs_bindgen_3c81bf3eaa92a5d4 :: + 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:1856: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_3c81bf3eaa92a5d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_ab7700bf49446481" hs_bindgen_ab7700bf49446481 :: + 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:1866: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_ab7700bf49446481 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b3d434657521a35c" hs_bindgen_b3d434657521a35c :: + 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:1885: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_b3d434657521a35c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_93997e1cc4304a07" hs_bindgen_93997e1cc4304a07 :: + 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:1892: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_93997e1cc4304a07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_2ba9b55ebf3e9af8" hs_bindgen_2ba9b55ebf3e9af8 :: + 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:1898: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_2ba9b55ebf3e9af8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_80adda0fe2012ba1" hs_bindgen_80adda0fe2012ba1 :: + 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:1904: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_80adda0fe2012ba1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_ea2c3df22bbb054a" hs_bindgen_ea2c3df22bbb054a :: + 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:1917: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_ea2c3df22bbb054a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_b513d39299fe943a" hs_bindgen_b513d39299fe943a :: + 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:1925: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_b513d39299fe943a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_b77131566be87ee5" hs_bindgen_b77131566be87ee5 :: + 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:1934: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_b77131566be87ee5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_a706737cf5a79aff" hs_bindgen_a706737cf5a79aff :: + 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:1945: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_a706737cf5a79aff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_4bc8d1870693e302" hs_bindgen_4bc8d1870693e302 :: + 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:1956: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_4bc8d1870693e302 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_479c8f33ad021497" hs_bindgen_479c8f33ad021497 :: + 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:1963: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_479c8f33ad021497 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_6ae3e99c2d5c7b5a" hs_bindgen_6ae3e99c2d5c7b5a :: + 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:1966: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_6ae3e99c2d5c7b5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_6d0f8930be2401ca" hs_bindgen_6d0f8930be2401ca :: + 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:1969: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_6d0f8930be2401ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_10947f28a3dc6731" hs_bindgen_10947f28a3dc6731 :: + 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:1981: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_10947f28a3dc6731 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_97fb82b7a24fc8ac" hs_bindgen_97fb82b7a24fc8ac :: + 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:1989: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_97fb82b7a24fc8ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_c194fc4f9aefc185" hs_bindgen_c194fc4f9aefc185 :: + 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:2004: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_c194fc4f9aefc185 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_08f0d5753d5dd7de" hs_bindgen_08f0d5753d5dd7de :: + 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:2023: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_08f0d5753d5dd7de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_9ccc20972a242d4c" hs_bindgen_9ccc20972a242d4c :: + 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:2039: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_9ccc20972a242d4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_6c4c89eab0adbe70" hs_bindgen_6c4c89eab0adbe70 :: + 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:2066: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_6c4c89eab0adbe70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_ccc6216f11f2fd76" hs_bindgen_ccc6216f11f2fd76 :: + 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:2084: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_ccc6216f11f2fd76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_ce4b0ee1f3a7ca50" hs_bindgen_ce4b0ee1f3a7ca50 :: + 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:2105: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_ce4b0ee1f3a7ca50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_9b78fadfbc89ebe1" hs_bindgen_9b78fadfbc89ebe1 :: + 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:2126: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_9b78fadfbc89ebe1 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/Safe.hs new file mode 100644 index 00000000..9e2d71e4 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/Safe.hs @@ -0,0 +1,12293 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_3_0.Safe where + +import Botan.Bindings.Generated.Botan_3_3_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_97258802a4db69e6 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_85ce680ba837bdd7 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_baa5c3c359caa12a (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_4baefc6f81943621 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_6e747ff5d0472b02 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_2725d82a45abdfcc (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_b892dc47b81aec57 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_89671d2f17c182d2 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_25d5337707790cff (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_74363499bdc8f194 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6439f69e08117508 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aadd3957bc693d6d (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d372f4f36ea45b9 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_cd46248d0ef9f369 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1350c37320753e3c (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ef970b27b48a9294 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a3dbcc2c33ba92f0 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f61ce9b698935c9 (" + , " 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_a436aedc3bfab0fd (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_29558285f3070b33 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b612558190dbc6c9 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8359211b225bc6b3 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd9e8754c37a168d (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c4223aaca361db9 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_094598f2c452ec28 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8b56e80383597c44 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b351dc0dab521c8d (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7843199672501338 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_240358a5f1afc4a7 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_921e332ba447a567 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fd114eedeb021a0a (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_e0ca38bfba38b647 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_79df3aaf3df14c25 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a329e241776737ab (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c4f67198392cb081 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_37e8f58cc0a74a61 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_133c525ea0441d93 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c431079e0b5a3900 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50c1e0da489548b1 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_89d03b691e78be75 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_13a1e3d99c7f0d56 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2a7d247eec1894c1 (" + , " 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_55769dcad2864580 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_59de39d37d3c6c52 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f0cead6363ae4fc5 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8e24ebb8c9ddffb5 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_22d665f8749a777e (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_061a1e23e3d0f011 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_804cb3d936d177ed (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_01b0e0cee61a03fb (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b675dfadcd0e782f (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c091cb9dee2660e4 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_716ab93e6c312d84 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7603b5efaa7787b2 (" + , " 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_127c0139aafbed3c (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_34ed3bf3f6fc347e (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_348efb7143d0adda (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2dba805483676355 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8a21d44f77c8e6d4 (" + , " 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_a40e01544b83362d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_ecc5496107c973f2 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4c367af7de73dd65 (" + , " 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_17a7914ddbc15db1 (" + , " 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_da19be7020e4581b (" + , " 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_3d3bf0997ac9db27 (" + , " 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_2d4d7c3b398c4ca9 (" + , " 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_86833118a43a8502 (" + , " 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_4b1b3c07e2bb5c64 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f512dac9bdea1a1 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_65370ad1e4898b4a (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_370b30db638ef02b (" + , " 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_12240e256c2d4516 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_1cea94a3c084dd54 (" + , " 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_1156b417af4632aa (" + , " 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_9cdfb1c07ad50d72 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c40552cf5d242bc4 (" + , " 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_9ff462f50f653229 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_e791e147e80050fc (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fd094f7a5a02fd9a (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4c6e05bd89d1c06f (" + , " 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_681924c8368d62c5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_00849c7935c9fe1a (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8c784bb4bad3c80f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_451363b471cc8853 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_896795e94571f888 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6a9103d2fc8dc7c2 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e61e8ae32cb37927 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ab8255a1bde6351c (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aab45544baadded9 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5e56c503ae8f48a5 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_158fb8375ff74102 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_6b41ce6a0183eafb (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_c93f7c52a262cd5e (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_0c8931ed5e592a9a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_def0ff4670ee7e34 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_87c18c082662ab59 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_d8da29c20a718ed0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d673c94b6a8c7bb6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2209363e91316104 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bba85c6d1be0be97 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3d0209acc8d7dbc9 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6536b3f3b330fea3 (" + , " 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_a0c2976b76062241 (" + , " 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_c3b1eba57970ebc3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_783ed58ac5634e4d (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5c637e0d8544e48 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee07cd99412be278 (" + , " 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_c4b11dea724c9ce4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f9339f23195e33d2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_998e6e07ba4ee072 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8a28e541fcf93753 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_acc20b190163ff5b (" + , " 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_768373a82de8f473 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e91a09ddb429457 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d80fdeb4385e0f5c (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_910b26408c619699 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_08f1b7785b88ecf0 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_48a2fecf21014e33 (" + , " 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_207a2ac22c40f4cb (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e4c05f923eec95f4 (" + , " 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_fbb35f4804942196 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d7d4c04e7df473c (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9900623a2310b4af (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7390ecbe1a0841c3 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9f47c91777a2e75c (" + , " 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_2e84b0e070b9631e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3801ba7468018cdd (" + , " 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_5c56ffa0e0726734 (" + , " 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_3868f19caedb29ef (" + , " 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_6ee3d060f2f55a8d (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5bec23b114065102 (" + , " 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_cf5938631ea14cd8 (" + , " 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_b410ac978ea30c1a (" + , " 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_9311d9cb6e721928 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9cda830ece24346 (" + , " 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_e061c1e5cd0371be (" + , " 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_bad793afa972cba0 (" + , " 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_bc354326c00d37f2 (" + , " 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_9064c0c42891c0ed (" + , " 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_bc275ece0ff5fcb6 (" + , " 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_f7c8d75bb1836557 (" + , " 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_54e082e0e83908cf (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fa76498e26818472 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4febd84107454e99 (" + , " 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_24f1656abd68fa50 (" + , " 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_64a09a2b719c5b4a (" + , " 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_3e2a889d6dbbcb61 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d99d58e4e1fcab4 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0636cc000d01a4a9 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b9a6c547914117e6 (" + , " 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_38def4e8d70d17a9 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e8abbaed9ea5c23a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6b784680cff1254 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_18b121aa38a5e0c1 (" + , " 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_56965225152a3392 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_676cf5187e5b3c89 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c22c8f1b3d58e2b8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98a6375329af4226 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e55f3187eeceb19b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f542d2df622a630e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_93966832166dc8df (" + , " 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_a5cd8a4f95e5b113 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ea4ee6fd9b019625 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d825c0721c5bd5fa (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1fc8948b748d00cd (" + , " 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_8fdf785d73a2ac69 (" + , " 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_48571be2978739b2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eddbd5b04ec0d64d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e2d4b4efdf6b1ff (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6558f9e91497bd39 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_17ea9c3b98ff8337 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c55c2a30a4d066dd (" + , " 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_e16f959515bd6b28 (" + , " 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_09f94825b6aa76c8 (" + , " 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_9cf43edf9cd6dad9 (" + , " 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_1b37336dc1e8154f (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78c92094d0a30e34 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e92337061febd35 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a65bd3e6f0562917 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_686f2c0192d2d0f8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_353c130e8b97a58d (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8e853f862ee36f56 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b0237e64975d1b8 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_07549d33797ab31f (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ba875b157fcfaa86 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3ed9881f25b25c8b (" + , " 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_469908076ea1db0e (" + , " 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_c5d80d2a688b9fa9 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_61f2ca94ed1b1f76 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51ca326823857c34 (" + , " 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_2b20e10e9aafe952 (" + , " 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_2d5ad004a83da777 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cf665ea848e824e2 (" + , " 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_05f753d711bbee32 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8d3de1a379b48d96 (" + , " 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_d37aaea51030cd84 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4254938cbe56c01d (" + , " 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_6e74eba75b61ba55 (" + , " 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_26dd615193dbdc57 (" + , " 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_e21c77a0fc104df1 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e93f06edac0719a8 (" + , " 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_9857801e2116156d (" + , " 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_7825003bbecdbd2d (" + , " 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_5720c50e5bca80e5 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f29132ee9fd01ff7 (" + , " 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_d921f7c2f2764cce (" + , " 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_1d0430d358f4aa35 (" + , " 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_e7f4ae01507d4d8f (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_807e7edfa955d00c (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_abae2c32858d6d31 (" + , " 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_5e8da7a1fd000d5a (" + , " 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_22ff5df1109c2aa5 (" + , " 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_dcc3f8e48773fe31 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_aafd65855eb08a87 (" + , " 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_12179c32957b1698 (" + , " 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_0859d69bd8bd079a (" + , " 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_3d8900a0904c2fb1 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_18ef220bb8bd8c90 (" + , " 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_165bd069f0123c9d (" + , " 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_93f94dd5f0c78f29 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34d5a26317d0be87 (" + , " 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_763797417b31f9bd (" + , " 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_69759e9850b1f524 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7ada1bdeaad1a950 (" + , " 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_b69818454fa44eb6 (" + , " 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_06c2baa80280933f (" + , " 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_45b618dd6de4ca6b (" + , " 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_609ccd8331a69e76 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d75c69a4c2880310 (" + , " 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_10e175425329a0ce (" + , " 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_bb9c59e3a0978449 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5bb301b7d7b2af55 (" + , " 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_4d0fcd2474da658b (" + , " 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_4658a69baac08bf2 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_56211d126bd2f5f4 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c751f16516d32830 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_42a710ebf8b65840 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_75ac262262ba5f1a (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6d84ddd33028c91 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f58141300f46a3d8 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f7cbb69a7870e567 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05b588c9780bfbbc (" + , " 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_d11da9aa6f6eb54b (" + , " 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_4c0b5ed2ae13f45b (" + , " 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_bab449e386eced89 (" + , " 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_acb476f3dcf8c65c (" + , " 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_c2cec23b5be30b26 (" + , " 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_e21a32b31f5fc031 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e898eec554ba0d31 (" + , " 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_b25d40e79c951efb (" + , " 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_d039ca2b3ae8e11e (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_57c092d721094b35 (" + , " 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_c8cd1595c42f00ba (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f584d501b06d2815 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53f6b4376fbc6955 (" + , " 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_251cdb5815104055 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_3adcbf8959199da6 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9257c4906afa6def (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fe29ec1dacd8e322 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_38fe6be557735a09 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a7f45ac886d4f39 (" + , " 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_1819614f68255880 (" + , " 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_cf70df6886a5f748 (" + , " 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_fac7cb496df4872d (" + , " 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_669634d9f5efc66c (" + , " 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_fcc459f916bcd9ea (" + , " 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_d6534cf1cd1f5670 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8cfa4f0f5d27211a (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e57d9af630e4fa4b (" + , " 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_cf438cc25d2b8683 (" + , " 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_e062f2e9f51666a0 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5234c512b2bc7c9f (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ecc288b8d95ee209 (" + , " 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_be5fc78f9129e0b4 (" + , " 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_a6820714ba038789 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d425a0fe022381bd (" + , " 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_c2ce7f4bc4aca223 (" + , " 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_f7f96edcc135a225 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_daadf1573f330975 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8947811e1b37ce6b (" + , " 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_9a7c39e234d94aa5 (" + , " 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_f5d56409c2be55cd (" + , " 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_0666bb0fb75e5e5f (" + , " 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_e27ceb61292ae24b (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4535f833bbd0e60e (" + , " 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_5a97e959b8d9cd80 (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_97258802a4db69e6" hs_bindgen_97258802a4db69e6 :: + 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:144: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_97258802a4db69e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_85ce680ba837bdd7" hs_bindgen_85ce680ba837bdd7 :: + 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:153: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_85ce680ba837bdd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_baa5c3c359caa12a" hs_bindgen_baa5c3c359caa12a :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_baa5c3c359caa12a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_4baefc6f81943621" hs_bindgen_4baefc6f81943621 :: + 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:166: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_4baefc6f81943621 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_6e747ff5d0472b02" hs_bindgen_6e747ff5d0472b02 :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_6e747ff5d0472b02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_2725d82a45abdfcc" hs_bindgen_2725d82a45abdfcc :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_2725d82a45abdfcc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_b892dc47b81aec57" hs_bindgen_b892dc47b81aec57 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_b892dc47b81aec57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_89671d2f17c182d2" hs_bindgen_89671d2f17c182d2 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_89671d2f17c182d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_25d5337707790cff" hs_bindgen_25d5337707790cff :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_25d5337707790cff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_74363499bdc8f194" hs_bindgen_74363499bdc8f194 :: + 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:197: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_74363499bdc8f194 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_6439f69e08117508" hs_bindgen_6439f69e08117508 :: + 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:203: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_6439f69e08117508 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_aadd3957bc693d6d" hs_bindgen_aadd3957bc693d6d :: + 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:209: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_aadd3957bc693d6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_0d372f4f36ea45b9" hs_bindgen_0d372f4f36ea45b9 :: + 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:221: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_0d372f4f36ea45b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_cd46248d0ef9f369" hs_bindgen_cd46248d0ef9f369 :: + 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:231: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_cd46248d0ef9f369 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_1350c37320753e3c" hs_bindgen_1350c37320753e3c :: + 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:236:28@ + +__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_1350c37320753e3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_ef970b27b48a9294" hs_bindgen_ef970b27b48a9294 :: + 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:241: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_ef970b27b48a9294 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_a3dbcc2c33ba92f0" hs_bindgen_a3dbcc2c33ba92f0 :: + 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:258: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 "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_a3dbcc2c33ba92f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_4f61ce9b698935c9" hs_bindgen_4f61ce9b698935c9 :: + 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:270: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_4f61ce9b698935c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_a436aedc3bfab0fd" hs_bindgen_a436aedc3bfab0fd :: + 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:284: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_a436aedc3bfab0fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_29558285f3070b33" hs_bindgen_29558285f3070b33 :: + 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:292: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_29558285f3070b33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_b612558190dbc6c9" hs_bindgen_b612558190dbc6c9 :: + 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:302: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_b612558190dbc6c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_8359211b225bc6b3" hs_bindgen_8359211b225bc6b3 :: + 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:312: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_8359211b225bc6b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_bd9e8754c37a168d" hs_bindgen_bd9e8754c37a168d :: + 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:322: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_bd9e8754c37a168d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_1c4223aaca361db9" hs_bindgen_1c4223aaca361db9 :: + 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:329: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_1c4223aaca361db9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_094598f2c452ec28" hs_bindgen_094598f2c452ec28 :: + 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:343: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_094598f2c452ec28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_8b56e80383597c44" hs_bindgen_8b56e80383597c44 :: + 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:351: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_8b56e80383597c44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_b351dc0dab521c8d" hs_bindgen_b351dc0dab521c8d :: + 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:359: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_b351dc0dab521c8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_7843199672501338" hs_bindgen_7843199672501338 :: + 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:367: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_7843199672501338 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_240358a5f1afc4a7" hs_bindgen_240358a5f1afc4a7 :: + 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:376: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_240358a5f1afc4a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_921e332ba447a567" hs_bindgen_921e332ba447a567 :: + 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:386: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_921e332ba447a567 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_fd114eedeb021a0a" hs_bindgen_fd114eedeb021a0a :: + 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:394: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_fd114eedeb021a0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_e0ca38bfba38b647" hs_bindgen_e0ca38bfba38b647 :: + 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:401: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_e0ca38bfba38b647 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_79df3aaf3df14c25" hs_bindgen_79df3aaf3df14c25 :: + 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:409: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_79df3aaf3df14c25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_a329e241776737ab" hs_bindgen_a329e241776737ab :: + 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:424: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_a329e241776737ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_c4f67198392cb081" hs_bindgen_c4f67198392cb081 :: + 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:432: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_c4f67198392cb081 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_37e8f58cc0a74a61" hs_bindgen_37e8f58cc0a74a61 :: + 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:441: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_37e8f58cc0a74a61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_133c525ea0441d93" hs_bindgen_133c525ea0441d93 :: + 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:450: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_133c525ea0441d93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_c431079e0b5a3900" hs_bindgen_c431079e0b5a3900 :: + 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:459: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_c431079e0b5a3900 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_50c1e0da489548b1" hs_bindgen_50c1e0da489548b1 :: + 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:469: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_50c1e0da489548b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_89d03b691e78be75" hs_bindgen_89d03b691e78be75 :: + 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:477: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_89d03b691e78be75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_13a1e3d99c7f0d56" hs_bindgen_13a1e3d99c7f0d56 :: + 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:485: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_13a1e3d99c7f0d56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_2a7d247eec1894c1" hs_bindgen_2a7d247eec1894c1 :: + 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:495: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_2a7d247eec1894c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_55769dcad2864580" hs_bindgen_55769dcad2864580 :: + 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:505: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_55769dcad2864580 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_59de39d37d3c6c52" hs_bindgen_59de39d37d3c6c52 :: + 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:519: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_59de39d37d3c6c52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_f0cead6363ae4fc5" hs_bindgen_f0cead6363ae4fc5 :: + 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:524: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_f0cead6363ae4fc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_8e24ebb8c9ddffb5" hs_bindgen_8e24ebb8c9ddffb5 :: + 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:529: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_8e24ebb8c9ddffb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_22d665f8749a777e" hs_bindgen_22d665f8749a777e :: + 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:534: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_22d665f8749a777e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_061a1e23e3d0f011" hs_bindgen_061a1e23e3d0f011 :: + 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:539: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_061a1e23e3d0f011 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_804cb3d936d177ed" hs_bindgen_804cb3d936d177ed :: + 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:544: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_804cb3d936d177ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_01b0e0cee61a03fb" hs_bindgen_01b0e0cee61a03fb :: + 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:549: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_01b0e0cee61a03fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_b675dfadcd0e782f" hs_bindgen_b675dfadcd0e782f :: + 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:555: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_b675dfadcd0e782f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_c091cb9dee2660e4" hs_bindgen_c091cb9dee2660e4 :: + 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:561: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_c091cb9dee2660e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_716ab93e6c312d84" hs_bindgen_716ab93e6c312d84 :: + 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:567:5@ + +__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_716ab93e6c312d84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_7603b5efaa7787b2" hs_bindgen_7603b5efaa7787b2 :: + 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:573:5@ + +__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_7603b5efaa7787b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_127c0139aafbed3c" hs_bindgen_127c0139aafbed3c :: + 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:578: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_127c0139aafbed3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_34ed3bf3f6fc347e" hs_bindgen_34ed3bf3f6fc347e :: + 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:588:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_34ed3bf3f6fc347e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_348efb7143d0adda" hs_bindgen_348efb7143d0adda :: + 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:593: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_348efb7143d0adda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_2dba805483676355" hs_bindgen_2dba805483676355 :: + 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:598: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_2dba805483676355 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_8a21d44f77c8e6d4" hs_bindgen_8a21d44f77c8e6d4 :: + 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_8a21d44f77c8e6d4 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:606: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_8a21d44f77c8e6d4 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_a40e01544b83362d" hs_bindgen_a40e01544b83362d :: + 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:618:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_a40e01544b83362d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_ecc5496107c973f2" hs_bindgen_ecc5496107c973f2 :: + 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:624:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_ecc5496107c973f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_4c367af7de73dd65" hs_bindgen_4c367af7de73dd65 :: + 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_4c367af7de73dd65 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:643: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_4c367af7de73dd65 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_17a7914ddbc15db1" hs_bindgen_17a7914ddbc15db1 :: + 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_17a7914ddbc15db1 + +{-| 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:676: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_17a7914ddbc15db1 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_da19be7020e4581b" hs_bindgen_da19be7020e4581b :: + 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_da19be7020e4581b + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:700: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_da19be7020e4581b x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_3d3bf0997ac9db27" hs_bindgen_3d3bf0997ac9db27 :: + 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_3d3bf0997ac9db27 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:727: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_3d3bf0997ac9db27 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_2d4d7c3b398c4ca9" hs_bindgen_2d4d7c3b398c4ca9 :: + 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_2d4d7c3b398c4ca9 + +{-| 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:746: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_2d4d7c3b398c4ca9 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_86833118a43a8502" hs_bindgen_86833118a43a8502 :: + 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_86833118a43a8502 + +{-| 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:769: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_86833118a43a8502 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_3_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_4b1b3c07e2bb5c64" hs_bindgen_4b1b3c07e2bb5c64 :: + 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:787: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_4b1b3c07e2bb5c64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_7f512dac9bdea1a1" hs_bindgen_7f512dac9bdea1a1 :: + 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:793: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_7f512dac9bdea1a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_65370ad1e4898b4a" hs_bindgen_65370ad1e4898b4a :: + 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:799: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_65370ad1e4898b4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_370b30db638ef02b" hs_bindgen_370b30db638ef02b :: + 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_370b30db638ef02b + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:804: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_370b30db638ef02b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_12240e256c2d4516" hs_bindgen_12240e256c2d4516 :: + 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:810: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_12240e256c2d4516 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_1cea94a3c084dd54" hs_bindgen_1cea94a3c084dd54 :: + 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_1cea94a3c084dd54 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:816: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_1cea94a3c084dd54 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_1156b417af4632aa" hs_bindgen_1156b417af4632aa :: + 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_1156b417af4632aa + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:822: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_1156b417af4632aa x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_9cdfb1c07ad50d72" hs_bindgen_9cdfb1c07ad50d72 :: + 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:830: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_9cdfb1c07ad50d72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_c40552cf5d242bc4" hs_bindgen_c40552cf5d242bc4 :: + 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:840: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_c40552cf5d242bc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_9ff462f50f653229" hs_bindgen_9ff462f50f653229 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:853: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_9ff462f50f653229 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_e791e147e80050fc" hs_bindgen_e791e147e80050fc :: + 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:859:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_e791e147e80050fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_fd094f7a5a02fd9a" hs_bindgen_fd094f7a5a02fd9a :: + 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:864: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_fd094f7a5a02fd9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_4c6e05bd89d1c06f" hs_bindgen_4c6e05bd89d1c06f :: + 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:869:28@ + +__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_4c6e05bd89d1c06f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_681924c8368d62c5" hs_bindgen_681924c8368d62c5 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:874:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_681924c8368d62c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_00849c7935c9fe1a" hs_bindgen_00849c7935c9fe1a :: + 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:879: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_00849c7935c9fe1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_8c784bb4bad3c80f" hs_bindgen_8c784bb4bad3c80f :: + 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:884: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_8c784bb4bad3c80f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_451363b471cc8853" hs_bindgen_451363b471cc8853 :: + 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:889: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_451363b471cc8853 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_896795e94571f888" hs_bindgen_896795e94571f888 :: + 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:895: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_896795e94571f888 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_6a9103d2fc8dc7c2" hs_bindgen_6a9103d2fc8dc7c2 :: + 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:900: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_6a9103d2fc8dc7c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_e61e8ae32cb37927" hs_bindgen_e61e8ae32cb37927 :: + 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:905: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_e61e8ae32cb37927 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_ab8255a1bde6351c" hs_bindgen_ab8255a1bde6351c :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:910: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_ab8255a1bde6351c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_aab45544baadded9" hs_bindgen_aab45544baadded9 :: + 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_aab45544baadded9 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:915: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_aab45544baadded9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_5e56c503ae8f48a5" hs_bindgen_5e56c503ae8f48a5 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:920: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_5e56c503ae8f48a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_158fb8375ff74102" hs_bindgen_158fb8375ff74102 :: + 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:927: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_158fb8375ff74102 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_6b41ce6a0183eafb" hs_bindgen_6b41ce6a0183eafb :: + 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:932: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_6b41ce6a0183eafb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_c93f7c52a262cd5e" hs_bindgen_c93f7c52a262cd5e :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:934: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_c93f7c52a262cd5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_0c8931ed5e592a9a" hs_bindgen_0c8931ed5e592a9a :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:936: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_0c8931ed5e592a9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_def0ff4670ee7e34" hs_bindgen_def0ff4670ee7e34 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:938: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_def0ff4670ee7e34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_87c18c082662ab59" hs_bindgen_87c18c082662ab59 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:939: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_87c18c082662ab59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_d8da29c20a718ed0" hs_bindgen_d8da29c20a718ed0 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:941: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_d8da29c20a718ed0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_d673c94b6a8c7bb6" hs_bindgen_d673c94b6a8c7bb6 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:942: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_d673c94b6a8c7bb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_2209363e91316104" hs_bindgen_2209363e91316104 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:944: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_2209363e91316104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_bba85c6d1be0be97" hs_bindgen_bba85c6d1be0be97 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:945: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_bba85c6d1be0be97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_3d0209acc8d7dbc9" hs_bindgen_3d0209acc8d7dbc9 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:946: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_3d0209acc8d7dbc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_6536b3f3b330fea3" hs_bindgen_6536b3f3b330fea3 :: + 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:949: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_6536b3f3b330fea3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_a0c2976b76062241" hs_bindgen_a0c2976b76062241 :: + 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:952: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_a0c2976b76062241 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_c3b1eba57970ebc3" hs_bindgen_c3b1eba57970ebc3 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:959: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_c3b1eba57970ebc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_783ed58ac5634e4d" hs_bindgen_783ed58ac5634e4d :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:966: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_783ed58ac5634e4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_e5c637e0d8544e48" hs_bindgen_e5c637e0d8544e48 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:971: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_e5c637e0d8544e48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_ee07cd99412be278" hs_bindgen_ee07cd99412be278 :: + 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:975: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_ee07cd99412be278 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_c4b11dea724c9ce4" hs_bindgen_c4b11dea724c9ce4 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:977: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_c4b11dea724c9ce4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_f9339f23195e33d2" hs_bindgen_f9339f23195e33d2 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:978: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_f9339f23195e33d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_998e6e07ba4ee072" hs_bindgen_998e6e07ba4ee072 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:980: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_998e6e07ba4ee072 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_8a28e541fcf93753" hs_bindgen_8a28e541fcf93753 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:982: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_8a28e541fcf93753 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_acc20b190163ff5b" hs_bindgen_acc20b190163ff5b :: + 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:985: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_acc20b190163ff5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_768373a82de8f473" hs_bindgen_768373a82de8f473 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:987: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_768373a82de8f473 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_7e91a09ddb429457" hs_bindgen_7e91a09ddb429457 :: + 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:994: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_7e91a09ddb429457 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_d80fdeb4385e0f5c" hs_bindgen_d80fdeb4385e0f5c :: + 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:1001: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_d80fdeb4385e0f5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_910b26408c619699" hs_bindgen_910b26408c619699 :: + 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:1006: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_910b26408c619699 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_08f1b7785b88ecf0" hs_bindgen_08f1b7785b88ecf0 :: + 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:1011: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_08f1b7785b88ecf0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_48a2fecf21014e33" hs_bindgen_48a2fecf21014e33 :: + 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:1029: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_48a2fecf21014e33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_207a2ac22c40f4cb" hs_bindgen_207a2ac22c40f4cb :: + 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:1040: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_207a2ac22c40f4cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_e4c05f923eec95f4" hs_bindgen_e4c05f923eec95f4 :: + 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:1056: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_e4c05f923eec95f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_fbb35f4804942196" hs_bindgen_fbb35f4804942196 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1060: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_fbb35f4804942196 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_1d7d4c04e7df473c" hs_bindgen_1d7d4c04e7df473c :: + 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:1063: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_1d7d4c04e7df473c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_9900623a2310b4af" hs_bindgen_9900623a2310b4af :: + 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:1065: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_9900623a2310b4af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_7390ecbe1a0841c3" hs_bindgen_7390ecbe1a0841c3 :: + 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:1067: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_7390ecbe1a0841c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_9f47c91777a2e75c" hs_bindgen_9f47c91777a2e75c :: + 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:1069: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_9f47c91777a2e75c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_2e84b0e070b9631e" hs_bindgen_2e84b0e070b9631e :: + 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:1071: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_2e84b0e070b9631e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_3801ba7468018cdd" hs_bindgen_3801ba7468018cdd :: + 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:1091: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_3801ba7468018cdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_5c56ffa0e0726734" hs_bindgen_5c56ffa0e0726734 :: + 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:1113: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_5c56ffa0e0726734 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_3868f19caedb29ef" hs_bindgen_3868f19caedb29ef :: + 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_3868f19caedb29ef + +{-| 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:1121: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_3868f19caedb29ef x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_6ee3d060f2f55a8d" hs_bindgen_6ee3d060f2f55a8d :: + 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:1126:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_6ee3d060f2f55a8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_5bec23b114065102" hs_bindgen_5bec23b114065102 :: + 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:1138: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_5bec23b114065102 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_cf5938631ea14cd8" hs_bindgen_cf5938631ea14cd8 :: + 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:1143: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_cf5938631ea14cd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_b410ac978ea30c1a" hs_bindgen_b410ac978ea30c1a :: + 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:1148: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_b410ac978ea30c1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_9311d9cb6e721928" hs_bindgen_9311d9cb6e721928 :: + 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:1150: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_9311d9cb6e721928 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_e9cda830ece24346" hs_bindgen_e9cda830ece24346 :: + 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:1157: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_e9cda830ece24346 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_e061c1e5cd0371be" hs_bindgen_e061c1e5cd0371be :: + 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:1172: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_e061c1e5cd0371be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_bad793afa972cba0" hs_bindgen_bad793afa972cba0 :: + 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:1187: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_bad793afa972cba0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_bc354326c00d37f2" hs_bindgen_bc354326c00d37f2 :: + 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:1204: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_bc354326c00d37f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_9064c0c42891c0ed" hs_bindgen_9064c0c42891c0ed :: + 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:1219: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_9064c0c42891c0ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_bc275ece0ff5fcb6" hs_bindgen_bc275ece0ff5fcb6 :: + 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:1235: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_bc275ece0ff5fcb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_f7c8d75bb1836557" hs_bindgen_f7c8d75bb1836557 :: + 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:1250: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_f7c8d75bb1836557 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_54e082e0e83908cf" hs_bindgen_54e082e0e83908cf :: + 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_54e082e0e83908cf + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1261: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_54e082e0e83908cf x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_fa76498e26818472" hs_bindgen_fa76498e26818472 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1263: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_fa76498e26818472 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_4febd84107454e99" hs_bindgen_4febd84107454e99 :: + 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:1265: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_4febd84107454e99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_24f1656abd68fa50" hs_bindgen_24f1656abd68fa50 :: + 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:1270: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_24f1656abd68fa50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_64a09a2b719c5b4a" hs_bindgen_64a09a2b719c5b4a :: + 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:1275: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_64a09a2b719c5b4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_3e2a889d6dbbcb61" hs_bindgen_3e2a889d6dbbcb61 :: + 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:1277: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_3e2a889d6dbbcb61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_6d99d58e4e1fcab4" hs_bindgen_6d99d58e4e1fcab4 :: + 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:1282: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_6d99d58e4e1fcab4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_0636cc000d01a4a9" hs_bindgen_0636cc000d01a4a9 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1284: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_0636cc000d01a4a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_b9a6c547914117e6" hs_bindgen_b9a6c547914117e6 :: + 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:1287: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_b9a6c547914117e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_38def4e8d70d17a9" hs_bindgen_38def4e8d70d17a9 :: + 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:1292:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_38def4e8d70d17a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_e8abbaed9ea5c23a" hs_bindgen_e8abbaed9ea5c23a :: + 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:1297: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_e8abbaed9ea5c23a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_b6b784680cff1254" hs_bindgen_b6b784680cff1254 :: + 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:1299: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_b6b784680cff1254 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_18b121aa38a5e0c1" hs_bindgen_18b121aa38a5e0c1 :: + 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:1304: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_18b121aa38a5e0c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_56965225152a3392" hs_bindgen_56965225152a3392 :: + 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_56965225152a3392 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1306: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_56965225152a3392 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_676cf5187e5b3c89" hs_bindgen_676cf5187e5b3c89 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1309: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_676cf5187e5b3c89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_c22c8f1b3d58e2b8" hs_bindgen_c22c8f1b3d58e2b8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1311: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_c22c8f1b3d58e2b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_98a6375329af4226" hs_bindgen_98a6375329af4226 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1313: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_98a6375329af4226 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_e55f3187eeceb19b" hs_bindgen_e55f3187eeceb19b :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1315: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_e55f3187eeceb19b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_f542d2df622a630e" hs_bindgen_f542d2df622a630e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1317: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_f542d2df622a630e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_93966832166dc8df" hs_bindgen_93966832166dc8df :: + 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:1320: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_93966832166dc8df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_a5cd8a4f95e5b113" hs_bindgen_a5cd8a4f95e5b113 :: + 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:1322: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_a5cd8a4f95e5b113 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_ea4ee6fd9b019625" hs_bindgen_ea4ee6fd9b019625 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1325: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_ea4ee6fd9b019625 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_d825c0721c5bd5fa" hs_bindgen_d825c0721c5bd5fa :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1327: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_d825c0721c5bd5fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_1fc8948b748d00cd" hs_bindgen_1fc8948b748d00cd :: + 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:1333: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_1fc8948b748d00cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_8fdf785d73a2ac69" hs_bindgen_8fdf785d73a2ac69 :: + 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:1336: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_8fdf785d73a2ac69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_48571be2978739b2" hs_bindgen_48571be2978739b2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1339: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_48571be2978739b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_eddbd5b04ec0d64d" hs_bindgen_eddbd5b04ec0d64d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1342: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_eddbd5b04ec0d64d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_7e2d4b4efdf6b1ff" hs_bindgen_7e2d4b4efdf6b1ff :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1344: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_7e2d4b4efdf6b1ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_6558f9e91497bd39" hs_bindgen_6558f9e91497bd39 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1346: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_6558f9e91497bd39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_17ea9c3b98ff8337" hs_bindgen_17ea9c3b98ff8337 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1348: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_17ea9c3b98ff8337 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_c55c2a30a4d066dd" hs_bindgen_c55c2a30a4d066dd :: + 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:1363: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_c55c2a30a4d066dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_e16f959515bd6b28" hs_bindgen_e16f959515bd6b28 :: + 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:1377: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_e16f959515bd6b28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_09f94825b6aa76c8" hs_bindgen_09f94825b6aa76c8 :: + 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:1395: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_09f94825b6aa76c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_9cf43edf9cd6dad9" hs_bindgen_9cf43edf9cd6dad9 :: + 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:1410: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_9cf43edf9cd6dad9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_1b37336dc1e8154f" hs_bindgen_1b37336dc1e8154f :: + 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_1b37336dc1e8154f + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1416: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_1b37336dc1e8154f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_78c92094d0a30e34" hs_bindgen_78c92094d0a30e34 :: + 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_78c92094d0a30e34 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1418: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_78c92094d0a30e34 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_4e92337061febd35" hs_bindgen_4e92337061febd35 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1420: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_4e92337061febd35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_a65bd3e6f0562917" hs_bindgen_a65bd3e6f0562917 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1422: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_a65bd3e6f0562917 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_686f2c0192d2d0f8" hs_bindgen_686f2c0192d2d0f8 :: + 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_686f2c0192d2d0f8 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1428: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_686f2c0192d2d0f8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_353c130e8b97a58d" hs_bindgen_353c130e8b97a58d :: + 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_353c130e8b97a58d + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1430: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_353c130e8b97a58d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_8e853f862ee36f56" hs_bindgen_8e853f862ee36f56 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1432: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_8e853f862ee36f56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_2b0237e64975d1b8" hs_bindgen_2b0237e64975d1b8 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1434: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_2b0237e64975d1b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_07549d33797ab31f" hs_bindgen_07549d33797ab31f :: + 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_07549d33797ab31f + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1440: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_07549d33797ab31f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_ba875b157fcfaa86" hs_bindgen_ba875b157fcfaa86 :: + 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_ba875b157fcfaa86 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1442: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_ba875b157fcfaa86 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_3ed9881f25b25c8b" hs_bindgen_3ed9881f25b25c8b :: + 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:1445: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_3ed9881f25b25c8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_469908076ea1db0e" hs_bindgen_469908076ea1db0e :: + 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:1448: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_469908076ea1db0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_c5d80d2a688b9fa9" hs_bindgen_c5d80d2a688b9fa9 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1454: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_c5d80d2a688b9fa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_61f2ca94ed1b1f76" hs_bindgen_61f2ca94ed1b1f76 :: + 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:1457: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_61f2ca94ed1b1f76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_51ca326823857c34" hs_bindgen_51ca326823857c34 :: + 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:1460: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_51ca326823857c34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_2b20e10e9aafe952" hs_bindgen_2b20e10e9aafe952 :: + 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:1463: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_2b20e10e9aafe952 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_2d5ad004a83da777" hs_bindgen_2d5ad004a83da777 :: + 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:1466: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_2d5ad004a83da777 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_cf665ea848e824e2" hs_bindgen_cf665ea848e824e2 :: + 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:1469: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_cf665ea848e824e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_05f753d711bbee32" hs_bindgen_05f753d711bbee32 :: + 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:1472: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_05f753d711bbee32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_8d3de1a379b48d96" hs_bindgen_8d3de1a379b48d96 :: + 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:1476: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_8d3de1a379b48d96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_d37aaea51030cd84" hs_bindgen_d37aaea51030cd84 :: + 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:1480: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_d37aaea51030cd84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_4254938cbe56c01d" hs_bindgen_4254938cbe56c01d :: + 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:1483: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_4254938cbe56c01d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_6e74eba75b61ba55" hs_bindgen_6e74eba75b61ba55 :: + 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:1490: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_6e74eba75b61ba55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_26dd615193dbdc57" hs_bindgen_26dd615193dbdc57 :: + 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:1498: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_26dd615193dbdc57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_e21c77a0fc104df1" hs_bindgen_e21c77a0fc104df1 :: + 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:1503: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_e21c77a0fc104df1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_e93f06edac0719a8" hs_bindgen_e93f06edac0719a8 :: + 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:1506: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_e93f06edac0719a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_9857801e2116156d" hs_bindgen_9857801e2116156d :: + 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_9857801e2116156d + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1509: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_9857801e2116156d x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_7825003bbecdbd2d" hs_bindgen_7825003bbecdbd2d :: + 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:1522: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_7825003bbecdbd2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_5720c50e5bca80e5" hs_bindgen_5720c50e5bca80e5 :: + 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:1527: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_5720c50e5bca80e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_f29132ee9fd01ff7" hs_bindgen_f29132ee9fd01ff7 :: + 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:1530: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_f29132ee9fd01ff7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_d921f7c2f2764cce" hs_bindgen_d921f7c2f2764cce :: + 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_d921f7c2f2764cce + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1533: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_d921f7c2f2764cce x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_1d0430d358f4aa35" hs_bindgen_1d0430d358f4aa35 :: + 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:1545: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_1d0430d358f4aa35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_e7f4ae01507d4d8f" hs_bindgen_e7f4ae01507d4d8f :: + 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:1550: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_e7f4ae01507d4d8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_807e7edfa955d00c" hs_bindgen_807e7edfa955d00c :: + 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:1552: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_807e7edfa955d00c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_abae2c32858d6d31" hs_bindgen_abae2c32858d6d31 :: + 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_abae2c32858d6d31 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1554: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_abae2c32858d6d31 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_5e8da7a1fd000d5a" hs_bindgen_5e8da7a1fd000d5a :: + 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:1557: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_5e8da7a1fd000d5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_22ff5df1109c2aa5" hs_bindgen_22ff5df1109c2aa5 :: + 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:1565: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_22ff5df1109c2aa5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_dcc3f8e48773fe31" hs_bindgen_dcc3f8e48773fe31 :: + 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:1573: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_dcc3f8e48773fe31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_aafd65855eb08a87" hs_bindgen_aafd65855eb08a87 :: + 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_aafd65855eb08a87 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1575: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_aafd65855eb08a87 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_12179c32957b1698" hs_bindgen_12179c32957b1698 :: + 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_12179c32957b1698 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1576: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_12179c32957b1698 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_0859d69bd8bd079a" hs_bindgen_0859d69bd8bd079a :: + 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:1584: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_0859d69bd8bd079a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_3d8900a0904c2fb1" hs_bindgen_3d8900a0904c2fb1 :: + 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:1589: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_3d8900a0904c2fb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_18ef220bb8bd8c90" hs_bindgen_18ef220bb8bd8c90 :: + 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:1591: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_18ef220bb8bd8c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_165bd069f0123c9d" hs_bindgen_165bd069f0123c9d :: + 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:1594: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_165bd069f0123c9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_93f94dd5f0c78f29" hs_bindgen_93f94dd5f0c78f29 :: + 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:1596: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_93f94dd5f0c78f29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_34d5a26317d0be87" hs_bindgen_34d5a26317d0be87 :: + 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_34d5a26317d0be87 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1599: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_34d5a26317d0be87 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_763797417b31f9bd" hs_bindgen_763797417b31f9bd :: + 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:1613: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_763797417b31f9bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_69759e9850b1f524" hs_bindgen_69759e9850b1f524 :: + 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:1618: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_69759e9850b1f524 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_7ada1bdeaad1a950" hs_bindgen_7ada1bdeaad1a950 :: + 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:1621: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_7ada1bdeaad1a950 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_b69818454fa44eb6" hs_bindgen_b69818454fa44eb6 :: + 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:1626: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_b69818454fa44eb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_06c2baa80280933f" hs_bindgen_06c2baa80280933f :: + 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_06c2baa80280933f + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1630: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_06c2baa80280933f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_45b618dd6de4ca6b" hs_bindgen_45b618dd6de4ca6b :: + 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:1643: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_45b618dd6de4ca6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_609ccd8331a69e76" hs_bindgen_609ccd8331a69e76 :: + 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:1648: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_609ccd8331a69e76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_d75c69a4c2880310" hs_bindgen_d75c69a4c2880310 :: + 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:1651: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_d75c69a4c2880310 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_10e175425329a0ce" hs_bindgen_10e175425329a0ce :: + 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_10e175425329a0ce + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1656: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_10e175425329a0ce x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_bb9c59e3a0978449" hs_bindgen_bb9c59e3a0978449 :: + 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:1669: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_bb9c59e3a0978449 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_5bb301b7d7b2af55" hs_bindgen_5bb301b7d7b2af55 :: + 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_5bb301b7d7b2af55 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1676: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_5bb301b7d7b2af55 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_4d0fcd2474da658b" hs_bindgen_4d0fcd2474da658b :: + 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_4d0fcd2474da658b + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1691: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_4d0fcd2474da658b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_4658a69baac08bf2" hs_bindgen_4658a69baac08bf2 :: + 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_4658a69baac08bf2 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1706: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_4658a69baac08bf2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_56211d126bd2f5f4" hs_bindgen_56211d126bd2f5f4 :: + 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:1707: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_56211d126bd2f5f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_c751f16516d32830" hs_bindgen_c751f16516d32830 :: + 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:1712: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_c751f16516d32830 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_42a710ebf8b65840" hs_bindgen_42a710ebf8b65840 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1714: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_42a710ebf8b65840 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_75ac262262ba5f1a" hs_bindgen_75ac262262ba5f1a :: + 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:1717: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_75ac262262ba5f1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_b6d84ddd33028c91" hs_bindgen_b6d84ddd33028c91 :: + 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:1718: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_b6d84ddd33028c91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_f58141300f46a3d8" hs_bindgen_f58141300f46a3d8 :: + 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:1720: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_f58141300f46a3d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_f7cbb69a7870e567" hs_bindgen_f7cbb69a7870e567 :: + 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:1721: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_f7cbb69a7870e567 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_05b588c9780bfbbc" hs_bindgen_05b588c9780bfbbc :: + 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:1724: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_05b588c9780bfbbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_d11da9aa6f6eb54b" hs_bindgen_d11da9aa6f6eb54b :: + 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:1726: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_d11da9aa6f6eb54b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_4c0b5ed2ae13f45b" hs_bindgen_4c0b5ed2ae13f45b :: + 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:1727: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_4c0b5ed2ae13f45b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_bab449e386eced89" hs_bindgen_bab449e386eced89 :: + 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:1728: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_bab449e386eced89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_acb476f3dcf8c65c" hs_bindgen_acb476f3dcf8c65c :: + 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:1730: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_acb476f3dcf8c65c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_c2cec23b5be30b26" hs_bindgen_c2cec23b5be30b26 :: + 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:1733: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_c2cec23b5be30b26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_e21a32b31f5fc031" hs_bindgen_e21a32b31f5fc031 :: + 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:1735: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_e21a32b31f5fc031 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_e898eec554ba0d31" hs_bindgen_e898eec554ba0d31 :: + 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:1738: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_e898eec554ba0d31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_b25d40e79c951efb" hs_bindgen_b25d40e79c951efb :: + 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:1742: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_b25d40e79c951efb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_d039ca2b3ae8e11e" hs_bindgen_d039ca2b3ae8e11e :: + 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:1745: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_d039ca2b3ae8e11e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_57c092d721094b35" hs_bindgen_57c092d721094b35 :: + 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:1748: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_57c092d721094b35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_c8cd1595c42f00ba" hs_bindgen_c8cd1595c42f00ba :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1764: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_c8cd1595c42f00ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_f584d501b06d2815" hs_bindgen_f584d501b06d2815 :: + 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:1770: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_f584d501b06d2815 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_53f6b4376fbc6955" hs_bindgen_53f6b4376fbc6955 :: + 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:1781: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_53f6b4376fbc6955 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_251cdb5815104055" hs_bindgen_251cdb5815104055 :: + 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:1796: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_251cdb5815104055 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_3adcbf8959199da6" hs_bindgen_3adcbf8959199da6 :: + 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:1804: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_3adcbf8959199da6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_9257c4906afa6def" hs_bindgen_9257c4906afa6def :: + 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_9257c4906afa6def + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1806: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_9257c4906afa6def x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_fe29ec1dacd8e322" hs_bindgen_fe29ec1dacd8e322 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1808: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_fe29ec1dacd8e322 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_38fe6be557735a09" hs_bindgen_38fe6be557735a09 :: + 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:1814: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_38fe6be557735a09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_3a7f45ac886d4f39" hs_bindgen_3a7f45ac886d4f39 :: + 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:1821: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_3a7f45ac886d4f39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_1819614f68255880" hs_bindgen_1819614f68255880 :: + 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_1819614f68255880 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1839: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_1819614f68255880 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_cf70df6886a5f748" hs_bindgen_cf70df6886a5f748 :: + 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_cf70df6886a5f748 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1848: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_cf70df6886a5f748 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_fac7cb496df4872d" hs_bindgen_fac7cb496df4872d :: + 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_fac7cb496df4872d + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1856: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_fac7cb496df4872d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_669634d9f5efc66c" hs_bindgen_669634d9f5efc66c :: + 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_669634d9f5efc66c + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1866: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_669634d9f5efc66c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_fcc459f916bcd9ea" hs_bindgen_fcc459f916bcd9ea :: + 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_fcc459f916bcd9ea + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1885: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_fcc459f916bcd9ea x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_d6534cf1cd1f5670" hs_bindgen_d6534cf1cd1f5670 :: + 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:1892:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_d6534cf1cd1f5670 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_8cfa4f0f5d27211a" hs_bindgen_8cfa4f0f5d27211a :: + 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:1898: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_8cfa4f0f5d27211a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_e57d9af630e4fa4b" hs_bindgen_e57d9af630e4fa4b :: + 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:1904: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_e57d9af630e4fa4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_cf438cc25d2b8683" hs_bindgen_cf438cc25d2b8683 :: + 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_cf438cc25d2b8683 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1917: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_cf438cc25d2b8683 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_e062f2e9f51666a0" hs_bindgen_e062f2e9f51666a0 :: + 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:1925:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_e062f2e9f51666a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_5234c512b2bc7c9f" hs_bindgen_5234c512b2bc7c9f :: + 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:1934: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_5234c512b2bc7c9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_ecc288b8d95ee209" hs_bindgen_ecc288b8d95ee209 :: + 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:1945: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_ecc288b8d95ee209 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_be5fc78f9129e0b4" hs_bindgen_be5fc78f9129e0b4 :: + 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_be5fc78f9129e0b4 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1956: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_be5fc78f9129e0b4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_a6820714ba038789" hs_bindgen_a6820714ba038789 :: + 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:1963:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_a6820714ba038789 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_d425a0fe022381bd" hs_bindgen_d425a0fe022381bd :: + 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_d425a0fe022381bd + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1966: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_d425a0fe022381bd x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_c2ce7f4bc4aca223" hs_bindgen_c2ce7f4bc4aca223 :: + 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_c2ce7f4bc4aca223 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1969: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_c2ce7f4bc4aca223 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_f7f96edcc135a225" hs_bindgen_f7f96edcc135a225 :: + 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:1981: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_f7f96edcc135a225 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_daadf1573f330975" hs_bindgen_daadf1573f330975 :: + 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:1989: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_daadf1573f330975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_8947811e1b37ce6b" hs_bindgen_8947811e1b37ce6b :: + 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_8947811e1b37ce6b + +{-| 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:2004: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_8947811e1b37ce6b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_9a7c39e234d94aa5" hs_bindgen_9a7c39e234d94aa5 :: + 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_9a7c39e234d94aa5 + +{-| 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:2023: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_9a7c39e234d94aa5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_f5d56409c2be55cd" hs_bindgen_f5d56409c2be55cd :: + 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_f5d56409c2be55cd + +{-| 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:2039: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_f5d56409c2be55cd x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_0666bb0fb75e5e5f" hs_bindgen_0666bb0fb75e5e5f :: + 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_0666bb0fb75e5e5f + +{-| 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:2066: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_0666bb0fb75e5e5f 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_3_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_e27ceb61292ae24b" hs_bindgen_e27ceb61292ae24b :: + 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:2084: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_e27ceb61292ae24b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_4535f833bbd0e60e" hs_bindgen_4535f833bbd0e60e :: + 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:2105: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_4535f833bbd0e60e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_5a97e959b8d9cd80" hs_bindgen_5a97e959b8d9cd80 :: + 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:2126: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_5a97e959b8d9cd80 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/Unsafe.hs new file mode 100644 index 00000000..4780cd69 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_3_0/Unsafe.hs @@ -0,0 +1,12293 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_3_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_3_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_8daaa3447c24842c (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_a2b80b9158e343a7 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_ed9395af35a34b84 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_e4fd25ec7eab49c5 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_a993f9afb3432905 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_0a74ff1296286d3d (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_2035027f6e107209 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_dd6013fed550a004 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_64cd5142754fcc3a (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_d7b172f864615467 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_db3480c2d2d115c1 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e6059f3af6b4ea13 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ba65358488f7c41d (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_892a9e9abb63330a (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_2494303de6cb2582 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3de2cae4e0a2612d (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4a8c50fcdf387ae1 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60ec7bafd8ec3fd3 (" + , " 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_fc835fa63bac7e29 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e1fef3b8f19373e6 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e5757ea87e4585e (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ceb40d1b5e1fe33f (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d7fdd4e94d936f81 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bc32b88bd2407d79 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_22f8af15a8992167 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_09d4d31a1c5da9a8 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9d4c9cd535263588 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_47785bd6f8adcd91 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_058da109df203b53 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b8cab2d6688dfb3d (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f69a58085425777 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_eadb8e87a16f9b6a (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9fc018c95a4b496d (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4138315be887c9c1 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b4fe2cc9a8723e47 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_56d5253fd9e9a8e5 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ad3020146fb9f27 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c1bfeafd5894a3a (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9316de2441902a44 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_afcb5baa22a604f8 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_72e2b8cdf8141da1 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3506325a5b42a127 (" + , " 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_b5eb5b28fffd1a9e (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b7c38e70f4c7cc8a (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2b07db525398e258 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1dfc41d491a90a1c (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7be03e6db7cf0191 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_516bf8bd63e6955a (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_436232c643e88475 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_b7f49f2031a88143 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_346a3cd31dac4bc9 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c418363cfd1248c3 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_427794a20e9cee55 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e87d8770dd7cf61 (" + , " 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_5dcc2e2f6a2cf0ed (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3fbb012b5809db32 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_831c7a2d0e30d8b3 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f263058125263c67 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c5317e6887a23b32 (" + , " 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_475c407784da6ce5 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_277fcb1754820600 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_eda6d6be102d60d0 (" + , " 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_297cd56acdb6ceff (" + , " 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_19cca9ab40f79fb7 (" + , " 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_145bc9fe34da6d71 (" + , " 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_310e57d7286d61bc (" + , " 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_d782c55ae9645526 (" + , " 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_7f3b3ea1f63ff84f (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7573665138fec693 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d899b86666e110f1 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_20ac7ea3fc163829 (" + , " 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_950b04610f7bc207 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_47e31dc977a309fa (" + , " 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_a4b725368a96e3d0 (" + , " 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_6524281d88d96ca1 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d322ee94a68381ad (" + , " 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_5aacae8579a2c0ba (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_0b6c119f89eb3a90 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bcb7ff4ee45bd629 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be3f045b8e394c47 (" + , " 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_92b1fcdc24d84101 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_69676cef99219692 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b1cca2fc8d45b69f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8de46bdcd5e82a01 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39f1d2318535054a (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_540ab698b31646ed (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bd5f0aad8a1a1347 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a03d3ff01fdc4da2 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50b34ba5ec7160a5 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7224dcb7f1561451 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_140d6652ba6b122a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_5ea9aa2bf9441824 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_01d5a328291369ba (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_e32a2b087d6d8809 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_9cb5e343bf6253c7 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_3754bf8173b02b20 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_76cfea4a83ca4005 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6027f9c6ecf5ee5a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2eb42fad6e2b46d6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_67a5ba157e1bbfdc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_58195e6dccee89f6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_84f225e6df2abf76 (" + , " 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_3f06d73c321bb3a3 (" + , " 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_3a8d136ecf3314e0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_053b9dc0e3843d5a (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c0daabe009696224 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cfd72348fe34e2fa (" + , " 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_20f8021b0f07ba43 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51ef6fc3fd9c3e7a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9af8f442f05e1f2f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e4e273616400a19e (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d7aa1a8aeb9a6dec (" + , " 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_0d6f8cf210a8d289 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ce71d56c837db6c0 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_12f888040cdcfa43 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e069241267b1de7e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_58f81dcdfe403e07 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5399bd3fb0c0f95c (" + , " 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_a62f036bc809889f (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_183c1923613002de (" + , " 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_dc2e09ad0e21a517 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ad79755a835f23aa (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b3b8c5a888ab9f4e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_91afd54e5be0ceef (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e0809acd4eafaa36 (" + , " 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_b24f7be30115adef (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f0127a3c4e4f059a (" + , " 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_0abaa8a4570c346f (" + , " 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_431151300fcf6430 (" + , " 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_3f769f5a61092401 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3336f86e3b496936 (" + , " 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_634ebcce3bc765f9 (" + , " 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_a484e5091652bedb (" + , " 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_a012ec379544de95 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5e879c3eea6f5d9c (" + , " 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_b27cbb36b9780550 (" + , " 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_a55037c385363e5a (" + , " 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_989c612dc124394e (" + , " 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_4ee7cb368f260b5a (" + , " 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_fbb6d0dae2681189 (" + , " 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_0e8b764b78287dea (" + , " 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_77f7a16797d98f9f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_14bb79077d1e2786 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1b9e102c13268676 (" + , " 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_c33aaef2bec7fde1 (" + , " 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_057c77d3dfa5cc5d (" + , " 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_c4360ae3714ea72d (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d90e2905d9423568 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40eedc43cc33c801 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6a60f85c0c83eb6 (" + , " 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_c2bc52bb3be04e1a (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_20b5297ad0d1f0a7 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d81a3fef25e9bf4 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f7d5544cc900528d (" + , " 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_d324aee17158464f (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d39f6ba6fe9f6134 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de8e496bfec5fc80 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8aafc4862369ff9a (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e16944c3d8e75480 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c7c81d37c82ce9f9 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ffad30fae777a952 (" + , " 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_0d1e5fca15b1e9ed (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23ffdc5298fc0ab4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f94d5ebc5a6d01c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8a12b7435dcc4fa0 (" + , " 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_199a2aab7ba03e56 (" + , " 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_99ac4a9fa7b0453e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ad54597a5f1fd895 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a892afbdb8db128e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_126f5fd0a867e563 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c242244a36576aa0 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_61dcfa26964275ea (" + , " 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_ede3a83075c794eb (" + , " 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_c1b34ac445a8cb6b (" + , " 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_4879d378adf25fde (" + , " 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_2135b106eea2c668 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1935bbc4d6f7634a (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2343d4dbe9ba9c71 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4a38c2440dd16c03 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b5318ec80d86c861 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_13256d29655a6c60 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_394e02d20a6f7331 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d95aab1ebd36b1a3 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bd3843e2d3e076d0 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_95a2644f39b1c468 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e61e4facb9ebf708 (" + , " 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_5149d68f7e258280 (" + , " 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_a89cd710b4032d6f (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_2a7e680a5f794338 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4c24a3e62b5a2e33 (" + , " 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_941e9fb2813166d6 (" + , " 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_03e2d502517878dd (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_33356f67d80420a9 (" + , " 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_36c4c390225bbbca (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c18d378fe7472206 (" + , " 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_c4518cf9863a52f6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c6f80c9704f5fdba (" + , " 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_e20df7e2b33473a8 (" + , " 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_13ffebb765a96c4c (" + , " 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_ce53d684606cf744 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e9cbc2c891ff38d1 (" + , " 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_f68f22f2aa2faa52 (" + , " 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_df6fb40e31166684 (" + , " 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_fa6d09d27832874b (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a15f023ee1693664 (" + , " 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_9bdc58568cc123a7 (" + , " 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_693f4469c2254fb2 (" + , " 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_f5e8bac26a5ba57a (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4065f43aa52248e7 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_49b6880d49464b26 (" + , " 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_63c73ec5e6ae0ecc (" + , " 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_84067e2ad722caae (" + , " 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_9afcb974e8230a17 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bc3fc45660afe3da (" + , " 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_8b67bbe52903be91 (" + , " 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_d20a4dae6dc9dcdf (" + , " 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_8d9b9d694d390ee1 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dcffd56c9bacd0cb (" + , " 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_12213fe356df37a9 (" + , " 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_e59a417e2cb0c3fb (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b2754c8f8a7076ab (" + , " 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_7d826b006739c2f7 (" + , " 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_dd17ea40624f022b (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0cb460b4f956f019 (" + , " 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_cb34a9668d9c2141 (" + , " 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_e1c123ad9f9372f7 (" + , " 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_a6097960ef1ad5c0 (" + , " 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_ccae6a99b5d2ea8b (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6c93835016bf569e (" + , " 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_d6025a0bf3e8c1b0 (" + , " 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_53576b7abc60f96c (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ca627b52e08969f (" + , " 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_33c249229ee04468 (" + , " 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_ce4ef4827aa552f7 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2fe7af3dd9135d1e (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e18e040bd63d081a (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5f7b8cad237cd961 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_843c26f66c72ef9d (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a27cf0b26930bd30 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9f6f3b22c499e744 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9d52a30235ff427d (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee04cc97448a0628 (" + , " 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_76d25f0c0d097c82 (" + , " 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_bdb1e781f954a50f (" + , " 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_90ee402f5f4ce947 (" + , " 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_0b1d1a61e9124d5d (" + , " 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_9dcbe68a48866842 (" + , " 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_59fab8980239912f (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d35fa2e57e7e1a7 (" + , " 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_c212b655adf96e7f (" + , " 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_92c55311f4b58ed1 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f770ef1dae90306 (" + , " 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_df2f532875e97751 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8eae18e2b003afa4 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2862fafc3166c81c (" + , " 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_5917560936c8e509 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_43c688df78c27caf (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5da03c3c5c1e4394 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_391ae515c27145ea (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_98f992e64d3513a8 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_47a4bc2f537ecbdb (" + , " 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_6ef14dac64181c47 (" + , " 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_5c86d950268260ac (" + , " 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_9d9bb135ff315dc0 (" + , " 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_9a4771e00cdffbf4 (" + , " 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_208ab84cfa4cf2a5 (" + , " 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_84afe96dd5f934a4 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8c7a7d14e680c021 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d1998386b99935ef (" + , " 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_79185ba54577ea33 (" + , " 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_1a5c64a2b6ba1c1d (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_baa0f98204b66aca (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_472f2fc9b7c6220b (" + , " 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_9b8134a6a4f8dc87 (" + , " 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_a4b72ae05dd8b90e (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_38cb6e7cf7f50b2f (" + , " 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_08fcbeaad1c24e25 (" + , " 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_ea85fe5061b70b2d (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_47758e1e3c327124 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bb65c9d97976ed89 (" + , " 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_e7d10153ab9208a0 (" + , " 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_f8af7aacfe770ea1 (" + , " 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_a372b7a054bcd524 (" + , " 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_1697cd37dfb98ca2 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6e7a5449aa5bee74 (" + , " 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_4d1a120a1aae2a25 (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_8daaa3447c24842c" hs_bindgen_8daaa3447c24842c :: + 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:144: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_8daaa3447c24842c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_a2b80b9158e343a7" hs_bindgen_a2b80b9158e343a7 :: + 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:153: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_a2b80b9158e343a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_ed9395af35a34b84" hs_bindgen_ed9395af35a34b84 :: + 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:160:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_ed9395af35a34b84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_e4fd25ec7eab49c5" hs_bindgen_e4fd25ec7eab49c5 :: + 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:166: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_e4fd25ec7eab49c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_a993f9afb3432905" hs_bindgen_a993f9afb3432905 :: + 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:171:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_a993f9afb3432905 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_0a74ff1296286d3d" hs_bindgen_0a74ff1296286d3d :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:176:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_0a74ff1296286d3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_2035027f6e107209" hs_bindgen_2035027f6e107209 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:181:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_2035027f6e107209 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_dd6013fed550a004" hs_bindgen_dd6013fed550a004 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_dd6013fed550a004 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_64cd5142754fcc3a" hs_bindgen_64cd5142754fcc3a :: + 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:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_64cd5142754fcc3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_d7b172f864615467" hs_bindgen_d7b172f864615467 :: + 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:197: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_d7b172f864615467 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_db3480c2d2d115c1" hs_bindgen_db3480c2d2d115c1 :: + 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:203: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_db3480c2d2d115c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_e6059f3af6b4ea13" hs_bindgen_e6059f3af6b4ea13 :: + 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:209: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_e6059f3af6b4ea13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_ba65358488f7c41d" hs_bindgen_ba65358488f7c41d :: + 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:221: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_ba65358488f7c41d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_892a9e9abb63330a" hs_bindgen_892a9e9abb63330a :: + 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:231: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_892a9e9abb63330a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_2494303de6cb2582" hs_bindgen_2494303de6cb2582 :: + 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:236:28@ + +__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_2494303de6cb2582 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_3de2cae4e0a2612d" hs_bindgen_3de2cae4e0a2612d :: + 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:241: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_3de2cae4e0a2612d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_4a8c50fcdf387ae1" hs_bindgen_4a8c50fcdf387ae1 :: + 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:258: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 "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_4a8c50fcdf387ae1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_60ec7bafd8ec3fd3" hs_bindgen_60ec7bafd8ec3fd3 :: + 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:270: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_60ec7bafd8ec3fd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_fc835fa63bac7e29" hs_bindgen_fc835fa63bac7e29 :: + 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:284: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_fc835fa63bac7e29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_e1fef3b8f19373e6" hs_bindgen_e1fef3b8f19373e6 :: + 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:292: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_e1fef3b8f19373e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_7e5757ea87e4585e" hs_bindgen_7e5757ea87e4585e :: + 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:302: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_7e5757ea87e4585e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_ceb40d1b5e1fe33f" hs_bindgen_ceb40d1b5e1fe33f :: + 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:312: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_ceb40d1b5e1fe33f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_d7fdd4e94d936f81" hs_bindgen_d7fdd4e94d936f81 :: + 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:322: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_d7fdd4e94d936f81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_bc32b88bd2407d79" hs_bindgen_bc32b88bd2407d79 :: + 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:329: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_bc32b88bd2407d79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_22f8af15a8992167" hs_bindgen_22f8af15a8992167 :: + 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:343: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_22f8af15a8992167 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_09d4d31a1c5da9a8" hs_bindgen_09d4d31a1c5da9a8 :: + 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:351: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_09d4d31a1c5da9a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_9d4c9cd535263588" hs_bindgen_9d4c9cd535263588 :: + 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:359: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_9d4c9cd535263588 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_47785bd6f8adcd91" hs_bindgen_47785bd6f8adcd91 :: + 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:367: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_47785bd6f8adcd91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_058da109df203b53" hs_bindgen_058da109df203b53 :: + 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:376: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_058da109df203b53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_b8cab2d6688dfb3d" hs_bindgen_b8cab2d6688dfb3d :: + 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:386: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_b8cab2d6688dfb3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_6f69a58085425777" hs_bindgen_6f69a58085425777 :: + 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:394: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_6f69a58085425777 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_eadb8e87a16f9b6a" hs_bindgen_eadb8e87a16f9b6a :: + 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:401: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_eadb8e87a16f9b6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_9fc018c95a4b496d" hs_bindgen_9fc018c95a4b496d :: + 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:409: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_9fc018c95a4b496d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_4138315be887c9c1" hs_bindgen_4138315be887c9c1 :: + 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:424: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_4138315be887c9c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_b4fe2cc9a8723e47" hs_bindgen_b4fe2cc9a8723e47 :: + 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:432: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_b4fe2cc9a8723e47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_56d5253fd9e9a8e5" hs_bindgen_56d5253fd9e9a8e5 :: + 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:441: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_56d5253fd9e9a8e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_0ad3020146fb9f27" hs_bindgen_0ad3020146fb9f27 :: + 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:450: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_0ad3020146fb9f27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_2c1bfeafd5894a3a" hs_bindgen_2c1bfeafd5894a3a :: + 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:459: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_2c1bfeafd5894a3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_9316de2441902a44" hs_bindgen_9316de2441902a44 :: + 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:469: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_9316de2441902a44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_afcb5baa22a604f8" hs_bindgen_afcb5baa22a604f8 :: + 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:477: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_afcb5baa22a604f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_72e2b8cdf8141da1" hs_bindgen_72e2b8cdf8141da1 :: + 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:485: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_72e2b8cdf8141da1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_3506325a5b42a127" hs_bindgen_3506325a5b42a127 :: + 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:495: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_3506325a5b42a127 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_b5eb5b28fffd1a9e" hs_bindgen_b5eb5b28fffd1a9e :: + 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:505: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_b5eb5b28fffd1a9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_b7c38e70f4c7cc8a" hs_bindgen_b7c38e70f4c7cc8a :: + 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:519: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_b7c38e70f4c7cc8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_2b07db525398e258" hs_bindgen_2b07db525398e258 :: + 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:524: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_2b07db525398e258 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_1dfc41d491a90a1c" hs_bindgen_1dfc41d491a90a1c :: + 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:529: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_1dfc41d491a90a1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_7be03e6db7cf0191" hs_bindgen_7be03e6db7cf0191 :: + 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:534: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_7be03e6db7cf0191 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_516bf8bd63e6955a" hs_bindgen_516bf8bd63e6955a :: + 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:539: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_516bf8bd63e6955a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_436232c643e88475" hs_bindgen_436232c643e88475 :: + 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:544: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_436232c643e88475 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_b7f49f2031a88143" hs_bindgen_b7f49f2031a88143 :: + 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:549: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_b7f49f2031a88143 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_346a3cd31dac4bc9" hs_bindgen_346a3cd31dac4bc9 :: + 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:555: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_346a3cd31dac4bc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_c418363cfd1248c3" hs_bindgen_c418363cfd1248c3 :: + 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:561: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_c418363cfd1248c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_427794a20e9cee55" hs_bindgen_427794a20e9cee55 :: + 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:567:5@ + +__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_427794a20e9cee55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_6e87d8770dd7cf61" hs_bindgen_6e87d8770dd7cf61 :: + 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:573:5@ + +__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_6e87d8770dd7cf61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_5dcc2e2f6a2cf0ed" hs_bindgen_5dcc2e2f6a2cf0ed :: + 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:578: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_5dcc2e2f6a2cf0ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_3fbb012b5809db32" hs_bindgen_3fbb012b5809db32 :: + 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:588:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_3fbb012b5809db32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_831c7a2d0e30d8b3" hs_bindgen_831c7a2d0e30d8b3 :: + 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:593: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_831c7a2d0e30d8b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_f263058125263c67" hs_bindgen_f263058125263c67 :: + 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:598: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_f263058125263c67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_c5317e6887a23b32" hs_bindgen_c5317e6887a23b32 :: + 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_c5317e6887a23b32 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:606: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_c5317e6887a23b32 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_475c407784da6ce5" hs_bindgen_475c407784da6ce5 :: + 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:618:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_475c407784da6ce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_277fcb1754820600" hs_bindgen_277fcb1754820600 :: + 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:624:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_277fcb1754820600 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_eda6d6be102d60d0" hs_bindgen_eda6d6be102d60d0 :: + 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_eda6d6be102d60d0 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:643: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_eda6d6be102d60d0 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_297cd56acdb6ceff" hs_bindgen_297cd56acdb6ceff :: + 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_297cd56acdb6ceff + +{-| 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:676: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_297cd56acdb6ceff x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_19cca9ab40f79fb7" hs_bindgen_19cca9ab40f79fb7 :: + 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_19cca9ab40f79fb7 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:700: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_19cca9ab40f79fb7 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_145bc9fe34da6d71" hs_bindgen_145bc9fe34da6d71 :: + 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_145bc9fe34da6d71 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:727: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_145bc9fe34da6d71 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_310e57d7286d61bc" hs_bindgen_310e57d7286d61bc :: + 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_310e57d7286d61bc + +{-| 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:746: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_310e57d7286d61bc x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_d782c55ae9645526" hs_bindgen_d782c55ae9645526 :: + 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_d782c55ae9645526 + +{-| 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:769: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_d782c55ae9645526 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_3_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_7f3b3ea1f63ff84f" hs_bindgen_7f3b3ea1f63ff84f :: + 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:787: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_7f3b3ea1f63ff84f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_7573665138fec693" hs_bindgen_7573665138fec693 :: + 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:793: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_7573665138fec693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_d899b86666e110f1" hs_bindgen_d899b86666e110f1 :: + 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:799: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_d899b86666e110f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_20ac7ea3fc163829" hs_bindgen_20ac7ea3fc163829 :: + 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_20ac7ea3fc163829 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:804: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_20ac7ea3fc163829 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_950b04610f7bc207" hs_bindgen_950b04610f7bc207 :: + 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:810: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_950b04610f7bc207 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_47e31dc977a309fa" hs_bindgen_47e31dc977a309fa :: + 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_47e31dc977a309fa + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:816: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_47e31dc977a309fa x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_a4b725368a96e3d0" hs_bindgen_a4b725368a96e3d0 :: + 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_a4b725368a96e3d0 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:822: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_a4b725368a96e3d0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_6524281d88d96ca1" hs_bindgen_6524281d88d96ca1 :: + 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:830: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_6524281d88d96ca1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_d322ee94a68381ad" hs_bindgen_d322ee94a68381ad :: + 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:840: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_d322ee94a68381ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_5aacae8579a2c0ba" hs_bindgen_5aacae8579a2c0ba :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:853: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_5aacae8579a2c0ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_0b6c119f89eb3a90" hs_bindgen_0b6c119f89eb3a90 :: + 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:859:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_0b6c119f89eb3a90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_bcb7ff4ee45bd629" hs_bindgen_bcb7ff4ee45bd629 :: + 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:864: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_bcb7ff4ee45bd629 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_be3f045b8e394c47" hs_bindgen_be3f045b8e394c47 :: + 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:869:28@ + +__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_be3f045b8e394c47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_92b1fcdc24d84101" hs_bindgen_92b1fcdc24d84101 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:874:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_92b1fcdc24d84101 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_69676cef99219692" hs_bindgen_69676cef99219692 :: + 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:879: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_69676cef99219692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_b1cca2fc8d45b69f" hs_bindgen_b1cca2fc8d45b69f :: + 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:884: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_b1cca2fc8d45b69f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_8de46bdcd5e82a01" hs_bindgen_8de46bdcd5e82a01 :: + 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:889: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_8de46bdcd5e82a01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_39f1d2318535054a" hs_bindgen_39f1d2318535054a :: + 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:895: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_39f1d2318535054a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_540ab698b31646ed" hs_bindgen_540ab698b31646ed :: + 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:900: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_540ab698b31646ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_bd5f0aad8a1a1347" hs_bindgen_bd5f0aad8a1a1347 :: + 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:905: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_bd5f0aad8a1a1347 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_a03d3ff01fdc4da2" hs_bindgen_a03d3ff01fdc4da2 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:910: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_a03d3ff01fdc4da2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_50b34ba5ec7160a5" hs_bindgen_50b34ba5ec7160a5 :: + 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_50b34ba5ec7160a5 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:915: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_50b34ba5ec7160a5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_7224dcb7f1561451" hs_bindgen_7224dcb7f1561451 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:920: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_7224dcb7f1561451 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_140d6652ba6b122a" hs_bindgen_140d6652ba6b122a :: + 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:927: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_140d6652ba6b122a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_5ea9aa2bf9441824" hs_bindgen_5ea9aa2bf9441824 :: + 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:932: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_5ea9aa2bf9441824 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_01d5a328291369ba" hs_bindgen_01d5a328291369ba :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:934: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_01d5a328291369ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_e32a2b087d6d8809" hs_bindgen_e32a2b087d6d8809 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:936: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_e32a2b087d6d8809 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_9cb5e343bf6253c7" hs_bindgen_9cb5e343bf6253c7 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:938: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_9cb5e343bf6253c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_3754bf8173b02b20" hs_bindgen_3754bf8173b02b20 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:939: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_3754bf8173b02b20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_76cfea4a83ca4005" hs_bindgen_76cfea4a83ca4005 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:941: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_76cfea4a83ca4005 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_6027f9c6ecf5ee5a" hs_bindgen_6027f9c6ecf5ee5a :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:942: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_6027f9c6ecf5ee5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_2eb42fad6e2b46d6" hs_bindgen_2eb42fad6e2b46d6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:944: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_2eb42fad6e2b46d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_67a5ba157e1bbfdc" hs_bindgen_67a5ba157e1bbfdc :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:945: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_67a5ba157e1bbfdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_58195e6dccee89f6" hs_bindgen_58195e6dccee89f6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:946: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_58195e6dccee89f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_84f225e6df2abf76" hs_bindgen_84f225e6df2abf76 :: + 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:949: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_84f225e6df2abf76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_3f06d73c321bb3a3" hs_bindgen_3f06d73c321bb3a3 :: + 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:952: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_3f06d73c321bb3a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_3a8d136ecf3314e0" hs_bindgen_3a8d136ecf3314e0 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:959: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_3a8d136ecf3314e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_053b9dc0e3843d5a" hs_bindgen_053b9dc0e3843d5a :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:966: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_053b9dc0e3843d5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_c0daabe009696224" hs_bindgen_c0daabe009696224 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:971: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_c0daabe009696224 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_cfd72348fe34e2fa" hs_bindgen_cfd72348fe34e2fa :: + 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:975: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_cfd72348fe34e2fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_20f8021b0f07ba43" hs_bindgen_20f8021b0f07ba43 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:977: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_20f8021b0f07ba43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_51ef6fc3fd9c3e7a" hs_bindgen_51ef6fc3fd9c3e7a :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:978: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_51ef6fc3fd9c3e7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_9af8f442f05e1f2f" hs_bindgen_9af8f442f05e1f2f :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:980: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_9af8f442f05e1f2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_e4e273616400a19e" hs_bindgen_e4e273616400a19e :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:982: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_e4e273616400a19e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_d7aa1a8aeb9a6dec" hs_bindgen_d7aa1a8aeb9a6dec :: + 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:985: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_d7aa1a8aeb9a6dec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_0d6f8cf210a8d289" hs_bindgen_0d6f8cf210a8d289 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:987: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_0d6f8cf210a8d289 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_ce71d56c837db6c0" hs_bindgen_ce71d56c837db6c0 :: + 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:994: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_ce71d56c837db6c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_12f888040cdcfa43" hs_bindgen_12f888040cdcfa43 :: + 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:1001: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_12f888040cdcfa43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_e069241267b1de7e" hs_bindgen_e069241267b1de7e :: + 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:1006: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_e069241267b1de7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_58f81dcdfe403e07" hs_bindgen_58f81dcdfe403e07 :: + 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:1011: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_58f81dcdfe403e07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_5399bd3fb0c0f95c" hs_bindgen_5399bd3fb0c0f95c :: + 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:1029: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_5399bd3fb0c0f95c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_a62f036bc809889f" hs_bindgen_a62f036bc809889f :: + 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:1040: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_a62f036bc809889f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_183c1923613002de" hs_bindgen_183c1923613002de :: + 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:1056: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_183c1923613002de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_dc2e09ad0e21a517" hs_bindgen_dc2e09ad0e21a517 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1060: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_dc2e09ad0e21a517 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_ad79755a835f23aa" hs_bindgen_ad79755a835f23aa :: + 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:1063: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_ad79755a835f23aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_b3b8c5a888ab9f4e" hs_bindgen_b3b8c5a888ab9f4e :: + 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:1065: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_b3b8c5a888ab9f4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_91afd54e5be0ceef" hs_bindgen_91afd54e5be0ceef :: + 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:1067: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_91afd54e5be0ceef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_e0809acd4eafaa36" hs_bindgen_e0809acd4eafaa36 :: + 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:1069: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_e0809acd4eafaa36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_b24f7be30115adef" hs_bindgen_b24f7be30115adef :: + 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:1071: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_b24f7be30115adef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_f0127a3c4e4f059a" hs_bindgen_f0127a3c4e4f059a :: + 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:1091: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_f0127a3c4e4f059a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_0abaa8a4570c346f" hs_bindgen_0abaa8a4570c346f :: + 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:1113: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_0abaa8a4570c346f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_431151300fcf6430" hs_bindgen_431151300fcf6430 :: + 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_431151300fcf6430 + +{-| 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:1121: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_431151300fcf6430 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_3f769f5a61092401" hs_bindgen_3f769f5a61092401 :: + 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:1126:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_3f769f5a61092401 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_3336f86e3b496936" hs_bindgen_3336f86e3b496936 :: + 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:1138: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_3336f86e3b496936 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_634ebcce3bc765f9" hs_bindgen_634ebcce3bc765f9 :: + 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:1143: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_634ebcce3bc765f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_a484e5091652bedb" hs_bindgen_a484e5091652bedb :: + 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:1148: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_a484e5091652bedb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_a012ec379544de95" hs_bindgen_a012ec379544de95 :: + 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:1150: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_a012ec379544de95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_5e879c3eea6f5d9c" hs_bindgen_5e879c3eea6f5d9c :: + 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:1157: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_5e879c3eea6f5d9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_b27cbb36b9780550" hs_bindgen_b27cbb36b9780550 :: + 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:1172: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_b27cbb36b9780550 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_a55037c385363e5a" hs_bindgen_a55037c385363e5a :: + 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:1187: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_a55037c385363e5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_989c612dc124394e" hs_bindgen_989c612dc124394e :: + 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:1204: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_989c612dc124394e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_4ee7cb368f260b5a" hs_bindgen_4ee7cb368f260b5a :: + 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:1219: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_4ee7cb368f260b5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_fbb6d0dae2681189" hs_bindgen_fbb6d0dae2681189 :: + 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:1235: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_fbb6d0dae2681189 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_0e8b764b78287dea" hs_bindgen_0e8b764b78287dea :: + 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:1250: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_0e8b764b78287dea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_77f7a16797d98f9f" hs_bindgen_77f7a16797d98f9f :: + 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_77f7a16797d98f9f + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1261: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_77f7a16797d98f9f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_14bb79077d1e2786" hs_bindgen_14bb79077d1e2786 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1263: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_14bb79077d1e2786 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_1b9e102c13268676" hs_bindgen_1b9e102c13268676 :: + 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:1265: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_1b9e102c13268676 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_c33aaef2bec7fde1" hs_bindgen_c33aaef2bec7fde1 :: + 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:1270: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_c33aaef2bec7fde1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_057c77d3dfa5cc5d" hs_bindgen_057c77d3dfa5cc5d :: + 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:1275: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_057c77d3dfa5cc5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_c4360ae3714ea72d" hs_bindgen_c4360ae3714ea72d :: + 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:1277: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_c4360ae3714ea72d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_d90e2905d9423568" hs_bindgen_d90e2905d9423568 :: + 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:1282: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_d90e2905d9423568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_40eedc43cc33c801" hs_bindgen_40eedc43cc33c801 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1284: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_40eedc43cc33c801 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_c6a60f85c0c83eb6" hs_bindgen_c6a60f85c0c83eb6 :: + 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:1287: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_c6a60f85c0c83eb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_c2bc52bb3be04e1a" hs_bindgen_c2bc52bb3be04e1a :: + 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:1292:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_c2bc52bb3be04e1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_20b5297ad0d1f0a7" hs_bindgen_20b5297ad0d1f0a7 :: + 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:1297: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_20b5297ad0d1f0a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_6d81a3fef25e9bf4" hs_bindgen_6d81a3fef25e9bf4 :: + 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:1299: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_6d81a3fef25e9bf4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_f7d5544cc900528d" hs_bindgen_f7d5544cc900528d :: + 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:1304: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_f7d5544cc900528d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_d324aee17158464f" hs_bindgen_d324aee17158464f :: + 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_d324aee17158464f + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1306: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_d324aee17158464f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_d39f6ba6fe9f6134" hs_bindgen_d39f6ba6fe9f6134 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1309: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_d39f6ba6fe9f6134 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_de8e496bfec5fc80" hs_bindgen_de8e496bfec5fc80 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1311: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_de8e496bfec5fc80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_8aafc4862369ff9a" hs_bindgen_8aafc4862369ff9a :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1313: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_8aafc4862369ff9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_e16944c3d8e75480" hs_bindgen_e16944c3d8e75480 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1315: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_e16944c3d8e75480 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_c7c81d37c82ce9f9" hs_bindgen_c7c81d37c82ce9f9 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1317: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_c7c81d37c82ce9f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_ffad30fae777a952" hs_bindgen_ffad30fae777a952 :: + 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:1320: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_ffad30fae777a952 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_0d1e5fca15b1e9ed" hs_bindgen_0d1e5fca15b1e9ed :: + 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:1322: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_0d1e5fca15b1e9ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_23ffdc5298fc0ab4" hs_bindgen_23ffdc5298fc0ab4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1325: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_23ffdc5298fc0ab4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_7f94d5ebc5a6d01c" hs_bindgen_7f94d5ebc5a6d01c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1327: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_7f94d5ebc5a6d01c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_8a12b7435dcc4fa0" hs_bindgen_8a12b7435dcc4fa0 :: + 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:1333: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_8a12b7435dcc4fa0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_199a2aab7ba03e56" hs_bindgen_199a2aab7ba03e56 :: + 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:1336: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_199a2aab7ba03e56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_99ac4a9fa7b0453e" hs_bindgen_99ac4a9fa7b0453e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1339: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_99ac4a9fa7b0453e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_ad54597a5f1fd895" hs_bindgen_ad54597a5f1fd895 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1342: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_ad54597a5f1fd895 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_a892afbdb8db128e" hs_bindgen_a892afbdb8db128e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1344: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_a892afbdb8db128e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_126f5fd0a867e563" hs_bindgen_126f5fd0a867e563 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1346: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_126f5fd0a867e563 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_c242244a36576aa0" hs_bindgen_c242244a36576aa0 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1348: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_c242244a36576aa0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_61dcfa26964275ea" hs_bindgen_61dcfa26964275ea :: + 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:1363: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_61dcfa26964275ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_ede3a83075c794eb" hs_bindgen_ede3a83075c794eb :: + 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:1377: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_ede3a83075c794eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_c1b34ac445a8cb6b" hs_bindgen_c1b34ac445a8cb6b :: + 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:1395: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_c1b34ac445a8cb6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_4879d378adf25fde" hs_bindgen_4879d378adf25fde :: + 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:1410: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_4879d378adf25fde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_2135b106eea2c668" hs_bindgen_2135b106eea2c668 :: + 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_2135b106eea2c668 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1416: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_2135b106eea2c668 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_1935bbc4d6f7634a" hs_bindgen_1935bbc4d6f7634a :: + 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_1935bbc4d6f7634a + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1418: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_1935bbc4d6f7634a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_2343d4dbe9ba9c71" hs_bindgen_2343d4dbe9ba9c71 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1420: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_2343d4dbe9ba9c71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_4a38c2440dd16c03" hs_bindgen_4a38c2440dd16c03 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1422: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_4a38c2440dd16c03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_b5318ec80d86c861" hs_bindgen_b5318ec80d86c861 :: + 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_b5318ec80d86c861 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1428: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_b5318ec80d86c861 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_13256d29655a6c60" hs_bindgen_13256d29655a6c60 :: + 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_13256d29655a6c60 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1430: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_13256d29655a6c60 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_394e02d20a6f7331" hs_bindgen_394e02d20a6f7331 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1432: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_394e02d20a6f7331 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_d95aab1ebd36b1a3" hs_bindgen_d95aab1ebd36b1a3 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1434: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_d95aab1ebd36b1a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_bd3843e2d3e076d0" hs_bindgen_bd3843e2d3e076d0 :: + 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_bd3843e2d3e076d0 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1440: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_bd3843e2d3e076d0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_95a2644f39b1c468" hs_bindgen_95a2644f39b1c468 :: + 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_95a2644f39b1c468 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1442: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_95a2644f39b1c468 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_e61e4facb9ebf708" hs_bindgen_e61e4facb9ebf708 :: + 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:1445: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_e61e4facb9ebf708 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_5149d68f7e258280" hs_bindgen_5149d68f7e258280 :: + 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:1448: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_5149d68f7e258280 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_a89cd710b4032d6f" hs_bindgen_a89cd710b4032d6f :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1454: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_a89cd710b4032d6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2a7e680a5f794338" hs_bindgen_2a7e680a5f794338 :: + 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:1457: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_2a7e680a5f794338 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_4c24a3e62b5a2e33" hs_bindgen_4c24a3e62b5a2e33 :: + 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:1460: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_4c24a3e62b5a2e33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_941e9fb2813166d6" hs_bindgen_941e9fb2813166d6 :: + 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:1463: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_941e9fb2813166d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_03e2d502517878dd" hs_bindgen_03e2d502517878dd :: + 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:1466: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_03e2d502517878dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_33356f67d80420a9" hs_bindgen_33356f67d80420a9 :: + 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:1469: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_33356f67d80420a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_36c4c390225bbbca" hs_bindgen_36c4c390225bbbca :: + 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:1472: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_36c4c390225bbbca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_c18d378fe7472206" hs_bindgen_c18d378fe7472206 :: + 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:1476: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_c18d378fe7472206 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_c4518cf9863a52f6" hs_bindgen_c4518cf9863a52f6 :: + 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:1480: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_c4518cf9863a52f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_c6f80c9704f5fdba" hs_bindgen_c6f80c9704f5fdba :: + 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:1483: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_c6f80c9704f5fdba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_e20df7e2b33473a8" hs_bindgen_e20df7e2b33473a8 :: + 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:1490: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_e20df7e2b33473a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_13ffebb765a96c4c" hs_bindgen_13ffebb765a96c4c :: + 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:1498: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_13ffebb765a96c4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ce53d684606cf744" hs_bindgen_ce53d684606cf744 :: + 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:1503: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_ce53d684606cf744 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_e9cbc2c891ff38d1" hs_bindgen_e9cbc2c891ff38d1 :: + 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:1506: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_e9cbc2c891ff38d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_f68f22f2aa2faa52" hs_bindgen_f68f22f2aa2faa52 :: + 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_f68f22f2aa2faa52 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1509: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_f68f22f2aa2faa52 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_df6fb40e31166684" hs_bindgen_df6fb40e31166684 :: + 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:1522: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_df6fb40e31166684 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_fa6d09d27832874b" hs_bindgen_fa6d09d27832874b :: + 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:1527: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_fa6d09d27832874b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_a15f023ee1693664" hs_bindgen_a15f023ee1693664 :: + 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:1530: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_a15f023ee1693664 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_9bdc58568cc123a7" hs_bindgen_9bdc58568cc123a7 :: + 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_9bdc58568cc123a7 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1533: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_9bdc58568cc123a7 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_693f4469c2254fb2" hs_bindgen_693f4469c2254fb2 :: + 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:1545: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_693f4469c2254fb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_f5e8bac26a5ba57a" hs_bindgen_f5e8bac26a5ba57a :: + 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:1550: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_f5e8bac26a5ba57a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_4065f43aa52248e7" hs_bindgen_4065f43aa52248e7 :: + 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:1552: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_4065f43aa52248e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_49b6880d49464b26" hs_bindgen_49b6880d49464b26 :: + 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_49b6880d49464b26 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1554: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_49b6880d49464b26 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_63c73ec5e6ae0ecc" hs_bindgen_63c73ec5e6ae0ecc :: + 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:1557: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_63c73ec5e6ae0ecc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_84067e2ad722caae" hs_bindgen_84067e2ad722caae :: + 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:1565: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_84067e2ad722caae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_9afcb974e8230a17" hs_bindgen_9afcb974e8230a17 :: + 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:1573: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_9afcb974e8230a17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_bc3fc45660afe3da" hs_bindgen_bc3fc45660afe3da :: + 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_bc3fc45660afe3da + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1575: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_bc3fc45660afe3da x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_8b67bbe52903be91" hs_bindgen_8b67bbe52903be91 :: + 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_8b67bbe52903be91 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1576: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_8b67bbe52903be91 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_d20a4dae6dc9dcdf" hs_bindgen_d20a4dae6dc9dcdf :: + 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:1584: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_d20a4dae6dc9dcdf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_8d9b9d694d390ee1" hs_bindgen_8d9b9d694d390ee1 :: + 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:1589: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_8d9b9d694d390ee1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_dcffd56c9bacd0cb" hs_bindgen_dcffd56c9bacd0cb :: + 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:1591: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_dcffd56c9bacd0cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_12213fe356df37a9" hs_bindgen_12213fe356df37a9 :: + 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:1594: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_12213fe356df37a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_e59a417e2cb0c3fb" hs_bindgen_e59a417e2cb0c3fb :: + 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:1596: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_e59a417e2cb0c3fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_b2754c8f8a7076ab" hs_bindgen_b2754c8f8a7076ab :: + 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_b2754c8f8a7076ab + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1599: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_b2754c8f8a7076ab x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_7d826b006739c2f7" hs_bindgen_7d826b006739c2f7 :: + 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:1613: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_7d826b006739c2f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_dd17ea40624f022b" hs_bindgen_dd17ea40624f022b :: + 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:1618: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_dd17ea40624f022b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_0cb460b4f956f019" hs_bindgen_0cb460b4f956f019 :: + 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:1621: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_0cb460b4f956f019 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_cb34a9668d9c2141" hs_bindgen_cb34a9668d9c2141 :: + 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:1626: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_cb34a9668d9c2141 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_e1c123ad9f9372f7" hs_bindgen_e1c123ad9f9372f7 :: + 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_e1c123ad9f9372f7 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1630: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_e1c123ad9f9372f7 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_a6097960ef1ad5c0" hs_bindgen_a6097960ef1ad5c0 :: + 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:1643: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_a6097960ef1ad5c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ccae6a99b5d2ea8b" hs_bindgen_ccae6a99b5d2ea8b :: + 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:1648: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_ccae6a99b5d2ea8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_6c93835016bf569e" hs_bindgen_6c93835016bf569e :: + 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:1651: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_6c93835016bf569e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_d6025a0bf3e8c1b0" hs_bindgen_d6025a0bf3e8c1b0 :: + 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_d6025a0bf3e8c1b0 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1656: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_d6025a0bf3e8c1b0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_53576b7abc60f96c" hs_bindgen_53576b7abc60f96c :: + 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:1669: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_53576b7abc60f96c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_9ca627b52e08969f" hs_bindgen_9ca627b52e08969f :: + 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_9ca627b52e08969f + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1676: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_9ca627b52e08969f x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_33c249229ee04468" hs_bindgen_33c249229ee04468 :: + 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_33c249229ee04468 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1691: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_33c249229ee04468 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_ce4ef4827aa552f7" hs_bindgen_ce4ef4827aa552f7 :: + 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_ce4ef4827aa552f7 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1706: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_ce4ef4827aa552f7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_2fe7af3dd9135d1e" hs_bindgen_2fe7af3dd9135d1e :: + 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:1707: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_2fe7af3dd9135d1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_e18e040bd63d081a" hs_bindgen_e18e040bd63d081a :: + 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:1712: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_e18e040bd63d081a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_5f7b8cad237cd961" hs_bindgen_5f7b8cad237cd961 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1714: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_5f7b8cad237cd961 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_843c26f66c72ef9d" hs_bindgen_843c26f66c72ef9d :: + 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:1717: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_843c26f66c72ef9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_a27cf0b26930bd30" hs_bindgen_a27cf0b26930bd30 :: + 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:1718: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_a27cf0b26930bd30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_9f6f3b22c499e744" hs_bindgen_9f6f3b22c499e744 :: + 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:1720: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_9f6f3b22c499e744 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_9d52a30235ff427d" hs_bindgen_9d52a30235ff427d :: + 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:1721: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_9d52a30235ff427d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_ee04cc97448a0628" hs_bindgen_ee04cc97448a0628 :: + 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:1724: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_ee04cc97448a0628 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_76d25f0c0d097c82" hs_bindgen_76d25f0c0d097c82 :: + 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:1726: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_76d25f0c0d097c82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_bdb1e781f954a50f" hs_bindgen_bdb1e781f954a50f :: + 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:1727: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_bdb1e781f954a50f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_90ee402f5f4ce947" hs_bindgen_90ee402f5f4ce947 :: + 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:1728: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_90ee402f5f4ce947 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_0b1d1a61e9124d5d" hs_bindgen_0b1d1a61e9124d5d :: + 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:1730: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_0b1d1a61e9124d5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_9dcbe68a48866842" hs_bindgen_9dcbe68a48866842 :: + 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:1733: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_9dcbe68a48866842 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_59fab8980239912f" hs_bindgen_59fab8980239912f :: + 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:1735: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_59fab8980239912f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_2d35fa2e57e7e1a7" hs_bindgen_2d35fa2e57e7e1a7 :: + 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:1738: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_2d35fa2e57e7e1a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_c212b655adf96e7f" hs_bindgen_c212b655adf96e7f :: + 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:1742: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_c212b655adf96e7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_92c55311f4b58ed1" hs_bindgen_92c55311f4b58ed1 :: + 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:1745: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_92c55311f4b58ed1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_0f770ef1dae90306" hs_bindgen_0f770ef1dae90306 :: + 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:1748: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_0f770ef1dae90306 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_df2f532875e97751" hs_bindgen_df2f532875e97751 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1764: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_df2f532875e97751 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_8eae18e2b003afa4" hs_bindgen_8eae18e2b003afa4 :: + 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:1770: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_8eae18e2b003afa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_2862fafc3166c81c" hs_bindgen_2862fafc3166c81c :: + 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:1781: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_2862fafc3166c81c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_5917560936c8e509" hs_bindgen_5917560936c8e509 :: + 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:1796: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_5917560936c8e509 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_43c688df78c27caf" hs_bindgen_43c688df78c27caf :: + 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:1804: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_43c688df78c27caf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_5da03c3c5c1e4394" hs_bindgen_5da03c3c5c1e4394 :: + 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_5da03c3c5c1e4394 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1806: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_5da03c3c5c1e4394 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_391ae515c27145ea" hs_bindgen_391ae515c27145ea :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1808: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_391ae515c27145ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_98f992e64d3513a8" hs_bindgen_98f992e64d3513a8 :: + 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:1814: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_98f992e64d3513a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_47a4bc2f537ecbdb" hs_bindgen_47a4bc2f537ecbdb :: + 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:1821: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_47a4bc2f537ecbdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_6ef14dac64181c47" hs_bindgen_6ef14dac64181c47 :: + 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_6ef14dac64181c47 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1839: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_6ef14dac64181c47 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_5c86d950268260ac" hs_bindgen_5c86d950268260ac :: + 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_5c86d950268260ac + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1848: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_5c86d950268260ac (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_9d9bb135ff315dc0" hs_bindgen_9d9bb135ff315dc0 :: + 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_9d9bb135ff315dc0 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1856: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_9d9bb135ff315dc0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_9a4771e00cdffbf4" hs_bindgen_9a4771e00cdffbf4 :: + 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_9a4771e00cdffbf4 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1866: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_9a4771e00cdffbf4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_208ab84cfa4cf2a5" hs_bindgen_208ab84cfa4cf2a5 :: + 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_208ab84cfa4cf2a5 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1885: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_208ab84cfa4cf2a5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_84afe96dd5f934a4" hs_bindgen_84afe96dd5f934a4 :: + 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:1892:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_84afe96dd5f934a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_8c7a7d14e680c021" hs_bindgen_8c7a7d14e680c021 :: + 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:1898: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_8c7a7d14e680c021 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_d1998386b99935ef" hs_bindgen_d1998386b99935ef :: + 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:1904: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_d1998386b99935ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_79185ba54577ea33" hs_bindgen_79185ba54577ea33 :: + 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_79185ba54577ea33 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1917: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_79185ba54577ea33 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_1a5c64a2b6ba1c1d" hs_bindgen_1a5c64a2b6ba1c1d :: + 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:1925:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_1a5c64a2b6ba1c1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_baa0f98204b66aca" hs_bindgen_baa0f98204b66aca :: + 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:1934: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_baa0f98204b66aca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_472f2fc9b7c6220b" hs_bindgen_472f2fc9b7c6220b :: + 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:1945: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_472f2fc9b7c6220b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_9b8134a6a4f8dc87" hs_bindgen_9b8134a6a4f8dc87 :: + 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_9b8134a6a4f8dc87 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:1956: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_9b8134a6a4f8dc87 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_a4b72ae05dd8b90e" hs_bindgen_a4b72ae05dd8b90e :: + 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:1963:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_a4b72ae05dd8b90e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_38cb6e7cf7f50b2f" hs_bindgen_38cb6e7cf7f50b2f :: + 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_38cb6e7cf7f50b2f + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:1966: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_38cb6e7cf7f50b2f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_08fcbeaad1c24e25" hs_bindgen_08fcbeaad1c24e25 :: + 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_08fcbeaad1c24e25 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:1969: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_08fcbeaad1c24e25 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_ea85fe5061b70b2d" hs_bindgen_ea85fe5061b70b2d :: + 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:1981: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_ea85fe5061b70b2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_47758e1e3c327124" hs_bindgen_47758e1e3c327124 :: + 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:1989: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_47758e1e3c327124 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_bb65c9d97976ed89" hs_bindgen_bb65c9d97976ed89 :: + 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_bb65c9d97976ed89 + +{-| 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:2004: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_bb65c9d97976ed89 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_e7d10153ab9208a0" hs_bindgen_e7d10153ab9208a0 :: + 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_e7d10153ab9208a0 + +{-| 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:2023: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_e7d10153ab9208a0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_f8af7aacfe770ea1" hs_bindgen_f8af7aacfe770ea1 :: + 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_f8af7aacfe770ea1 + +{-| 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:2039: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_f8af7aacfe770ea1 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_a372b7a054bcd524" hs_bindgen_a372b7a054bcd524 :: + 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_a372b7a054bcd524 + +{-| 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:2066: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_a372b7a054bcd524 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_3_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_1697cd37dfb98ca2" hs_bindgen_1697cd37dfb98ca2 :: + 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:2084: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_1697cd37dfb98ca2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_6e7a5449aa5bee74" hs_bindgen_6e7a5449aa5bee74 :: + 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:2105: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_6e7a5449aa5bee74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_3_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_4d1a120a1aae2a25" hs_bindgen_4d1a120a1aae2a25 :: + 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:2126: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_4d1a120a1aae2a25 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0.hs new file mode 100644 index 00000000..0ee45585 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_4_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:102: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 + +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:103: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:104: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:106: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:107: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:109: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:110: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:112: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:113: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:114: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:115: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:117: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:118: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:119: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:120: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:121: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:122: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:124: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:125: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:127: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:128: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:129: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:131: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:134: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' + +__defined at:__ @botan\/ffi.h:143:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:143: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:152:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:152: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:225:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:260:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:260: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:348:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:348: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:428:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:428: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:524:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:524: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:526: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:527: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:528: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:621: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:803:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:803: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:869:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:869: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1066:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1066: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:1079: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:1149: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:1150:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1280:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1280: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1540:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1540: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1564:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1564: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:1585:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1587:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1587: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1607:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1607: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1626:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1626: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1655: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:1655: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1685: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:1685: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1749:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1749: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1796: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 + +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:1797: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:1798: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:1799: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:1800: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:1801: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:1802: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:1803: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:1804: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:1805: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:1806: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1847:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1847: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1924:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1924: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1956:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1956: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:1996:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:1996: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:1998: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2019: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:2019: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_4_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/FunPtr.hs new file mode 100644 index 00000000..db50dd94 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/FunPtr.hs @@ -0,0 +1,8571 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_4_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_4_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_4_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_64acc4c5fe21e436 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_6bb54e2a41d41eb9 (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_65fde5655b671f46 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53c5ac52bcc4b528 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_1bafcc7ebd98dd60 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_64d4bc282e7259e0 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_0a7690706a7c779e (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_758e4053ba4fee99 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_9a26490a8f888736 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76dcddf641ceca42 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e7d8b4d5528f2ae (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47db9579c2c7bb4f (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3261946924124dcf (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba977921b2584d44 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2685ddc78030f564 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cee9be8f1bcb9ec0 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a075b6b55a380e06 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a5cb0817bc80300 (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_4_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c08badd61bb4544e (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f56f9862979f5d4b (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_649eac91f7a991b9 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55e76379f134ed8f (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b3f4a95361bc6de (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93a0226b3f7c0033 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f5b755451067036 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06e380172229b059 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9da1999562e8bac (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b88937272878d3db (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9dcc36b4a4f6543d (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d7c864f485d69d0 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87f9b142b8e80aa3 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a46b2093e45fe3c (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c7b0423e3f5e095 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_02c8022b57fd65a1 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9bccc82012d4696f (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_262b9917c8b147fa (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d73d09132df13f23 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cca995a0da7b5c2e (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f7d23e4bca5f244 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd53c0de2bee345e (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a63af68d4eee8fb (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d5b85b8a6e4fc1e (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_4_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29606a9739d479bb (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa7215bc593a390b (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e84916571fe51133 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ee1c92175b645fe (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03980f7ea3c456bf (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b89f1419677dfb1 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5a26cc4bf9b5ef2 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74671ccef010e71a (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65b5661bc5418205 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa2a3ec6dccd9208 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6472d110af779c6 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc3014f3bd051370 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a72cb1098d261e6c (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_4_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c6cd6b22d934d93 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_876a707956e66a44 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f868ca3886b896cb (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b02b5353e48fea4d (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a876415b19e1454a (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_4_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fdfebedfcd156f96 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59c467ed01590c39 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f83e8f03e7fd369 (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_4_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6c9ad724d88b9e0 (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_4_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_80aabb2b59b6821f (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_4_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12724fcf7df6cf0f (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_4_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e51d05bf6a3ee3c2 (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_4_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34476a542c9be04a (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_4_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5086b32cc14028f2 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aba9100cc1b0cdf6 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bf8c6e74dbfabb6 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11c506f19eeb8e28 (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_4_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b157539cbf8dbac6 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50aea5b5e2afebd2 (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_4_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d67c57d0319e3181 (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_4_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_525cfa628165178f (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58d56961a8b4239c (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_4_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41f5f994653d59ba (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77214274e480959d (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1379604f721bfa6 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbdae87b134c863b (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28719e4197a66377 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49b5a4658ecbe652 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2453a4b87d6f4210 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51370941b96931aa (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55136ecf4f5c72aa (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77f402e848e5cac6 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f6aed97639087b9 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8a62a5358b68577 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c85d8247695a2f8 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c23afd2bacada091 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a479c4c1e1700c4 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22151dae4680e17f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ab7786c7b0150a2 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93b18b63c404913a (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dcf3c2866a437be4 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42297785f1d4de08 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fff348af10fa54e9 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5cee733550af3ecc (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_43dcd4a771d2e786 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_afc1ed3c1310b1f8 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70644b03a8188d47 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1749fd80bd32355e (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_4_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4b1e117b0677f3a (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_4_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7be7bad505c48825 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e125972f9dd58394 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1612d989c1b53b3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8673af39aadf77b (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_4_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4016dd5e3200f38f (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e8907da751afd8d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_21de4854953e4205 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31218b1bd89d3215 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea37b74c8fe36f40 (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_4_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efe3a5ef3d74ae08 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_562b7d9205568e7d (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18eba22b82760420 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1155fee8f7671763 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11802f51649365e0 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98e05029315f6748 (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_4_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14a27e21db6a30ef (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4feadde04b56d397 (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_4_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bf456ee48d8b8e2 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b77444d2d62f491 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9af352560f09bba4 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f10bf87ceb45d528 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb81a041bffa3102 (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_4_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c49664f5de9d3831 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b94a48b7986f394d (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_4_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f0fa5545170db79b (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_4_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3258d92286eea54c (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_4_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb1c6c3188b7db25 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3851972ceb78d653 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33374861ef0f39b9 (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_4_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9754c4d866a095f (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_4_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a08372a724e78c1 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f73275b9e39e91ba (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_4_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d45d7dd88c8d6654 (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_4_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2b0ba1bd78fab5a (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_4_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40cd4338fcc27231 (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_4_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c1619b0abb634f7 (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_4_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a785b9abd266f09 (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_4_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6b3144406930516f (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_4_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3e6fd1d34c5eee3 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d3f16aa9348bb784 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9f898c37a462927 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf2c77b0cb7a2044 (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_4_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be4f4ffcce16b9aa (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_4_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dccb7235f83b8a73 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44a26174a627818e (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69b54c951633427f (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16b6f04f280be643 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45c1ef2c1fe2aff5 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d9f53c80ba005e5 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33ef0e9e2b41f67c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c0a3886d297de20 (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_4_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64159be9b65898f8 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_813b45eb7787b9b3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_437b59a48d4a2d1b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ddd2722823a374ec (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9eed697569305a60 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b13f1df670e76338 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a331722340745c2 (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_4_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e078bf878bbe1d36 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a46c6d200ebd9b3d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a20a8cdfff5d8454 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25715227c09c7023 (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_4_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1594dca9d0d7100c (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_4_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25db139faf335689 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e39fe67420b1c45 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33aaed7bbc091adc (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40e24e57c42bc01a (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_85294fb2388d0bc9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79bda72693975679 (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_4_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e56b1c6d13fc423f (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_4_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dda62d86fa0e7d9f (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_4_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33d2197f9d0cb1e0 (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_4_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8334b25cf13f7bf0 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1582fd43a4f0fdfc (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7079a54f45fd9ede (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_093669f8239d91ff (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d9bc25ba29de55f (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10703d63c004bbe7 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf695e9976a80f00 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69658e0b90b2d82b (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9e211fd28ed393a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6130404349e32c1d (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_211e4265d5972509 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3eef3ed9103a682f (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe99fc51f95089ba (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8280cdd0512da518 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba8dae651668a261 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_381f8318060549c3 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58b385f63f092db9 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca92747cc32c3dc2 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59dbefdf75dbff75 (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_4_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59e8d7582a77db90 (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_4_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_693b5c59f514a09e (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_487ed3b0016087b5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a792e809729f834 (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_4_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e055a3b7fb6fd052 (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_4_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86a52f588cd2d454 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90b3eb062453007b (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_4_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84bbc6d5d5756d93 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6258ac4f376cd45b (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_4_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30e357979a98640e (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_471a75280edbcc88 (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_4_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7cf1bcce23d78b4 (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_4_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e914dc4cfa60c51 (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_4_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18e410af6dd482e7 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29f5cc643fde682c (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_4_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_084684cef97a0cfc (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_4_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bec3c29c24aea9e (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_4_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be17d726ff713fd7 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ea9dba62fc455b0 (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_4_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db5da4354895e43f (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_4_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e3b090d82bf1d9d (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_4_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ac00b9bbeb39ee8 (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a662d630c7d394d6 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e0819dc22ff9e61 (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_4_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d3443353c0d05976 (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_4_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b4be8a3482828a6b (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_4_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_540d39d78fb95fad (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8944193ea889a44 (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_4_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f71fb8eadce65dc (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_4_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0edd9551f224ca90 (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_4_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24ea2cf1b76ef2dc (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a9276f40d410485 (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_4_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7df980707970145 (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_4_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abf76b9a7e766cfc (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec11b1782aead0b6 (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_4_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c00036b1c458ba8 (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_4_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3ac1f744086ecee (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b4c90864d469a2f (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_4_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e8594d76474ec68 (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_4_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b255988005aa0cec (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_4_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa1f62838cd371f5 (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_4_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3d0e3122fab464c (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_990907f61db0d0b6 (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_4_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4d6e4220adfd5bf (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_4_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6226b8d9ca87c85 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ba3af1ccd521950 (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_4_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5f650e3e8cc4c23 (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_4_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe2d548b3609f216 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2efb228292003bd (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bcb41e5e4e0b9e15 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e27d630cc9276d0 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8c7430f663ce1c90 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7e5ab2274ad0391 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16b1051881ce3c37 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29f589cbbc367701 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa2bc01345d12bf7 (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_4_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64ab5d0795cd76ec (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_4_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12c27985600a3433 (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_4_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ece2901601a2d208 (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_4_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ddbf7e7bb671e81 (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_4_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b507437d932def61 (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_4_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f8f04255cf2f0397 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5af886f3dea1864 (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_4_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1e77a1b81b1b261 (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_4_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc4fb58e586fd9cc (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c41aee3df30e2ff (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_4_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a4df6fc33bbf760 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e07aab7e452bab9 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c599b4ead34764a6 (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_4_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_8644c280c74b135b (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8733c040b3c0a963 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65e3816ad4930aad (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c31a63010368ab68 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_686d66251cbadfdd (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_573154686d78373c (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_4_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3a390b5ae7346c7 (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_4_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ea23732ffb229f4 (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_4_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f17b8696a3d0b731 (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_4_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56df5f802030ba48 (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_4_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2817b505dd04990a (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_4_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_67353fa6fc62b909 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87d40bcdf8f3c922 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e72cc023ec77832 (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_4_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87ff976fde7fffe3 (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_4_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74880ba2fdaa97d4 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d60be0a667ecfa43 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_553ebf6002ebf8d8 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b6c3e61329b447d (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_4_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_899ff2b61db70f9b (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c7b031a618374c2 (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_4_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32ccb9e6377dedb3 (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_4_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d67c700ccf08e30 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_912c097c372c3416 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0c76a5c4ccbf59c (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_4_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e668144401423031 (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_4_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ce58bbf34b4c195 (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_4_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_353d1967b68dc4b2 (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_4_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cedd74b22309d4c4 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f6ed65378843d06 (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_4_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0407624b71f8138 (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;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_64acc4c5fe21e436" hs_bindgen_64acc4c5fe21e436 :: + 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:158: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_64acc4c5fe21e436 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_6bb54e2a41d41eb9" hs_bindgen_6bb54e2a41d41eb9 :: + 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:167: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_6bb54e2a41d41eb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_65fde5655b671f46" hs_bindgen_65fde5655b671f46 :: + 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:174: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_65fde5655b671f46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_53c5ac52bcc4b528" hs_bindgen_53c5ac52bcc4b528 :: + 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:180: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_53c5ac52bcc4b528 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_1bafcc7ebd98dd60" hs_bindgen_1bafcc7ebd98dd60 :: + 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:185: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_1bafcc7ebd98dd60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_64d4bc282e7259e0" hs_bindgen_64d4bc282e7259e0 :: + 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:190: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_64d4bc282e7259e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_0a7690706a7c779e" hs_bindgen_0a7690706a7c779e :: + 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:195: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_0a7690706a7c779e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_758e4053ba4fee99" hs_bindgen_758e4053ba4fee99 :: + 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:200: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_758e4053ba4fee99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_9a26490a8f888736" hs_bindgen_9a26490a8f888736 :: + 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:206: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_9a26490a8f888736 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_76dcddf641ceca42" hs_bindgen_76dcddf641ceca42 :: + 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:211: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_76dcddf641ceca42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_9e7d8b4d5528f2ae" hs_bindgen_9e7d8b4d5528f2ae :: + 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:217: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_9e7d8b4d5528f2ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_47db9579c2c7bb4f" hs_bindgen_47db9579c2c7bb4f :: + 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:223: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_47db9579c2c7bb4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_3261946924124dcf" hs_bindgen_3261946924124dcf :: + 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:235: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_3261946924124dcf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_ba977921b2584d44" hs_bindgen_ba977921b2584d44 :: + 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:245: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_ba977921b2584d44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_2685ddc78030f564" hs_bindgen_2685ddc78030f564 :: + 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:250: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_2685ddc78030f564 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_cee9be8f1bcb9ec0" hs_bindgen_cee9be8f1bcb9ec0 :: + 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:255: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_cee9be8f1bcb9ec0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_a075b6b55a380e06" hs_bindgen_a075b6b55a380e06 :: + 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:272: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_a075b6b55a380e06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_9a5cb0817bc80300" hs_bindgen_9a5cb0817bc80300 :: + 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:284: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_9a5cb0817bc80300 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_c08badd61bb4544e" hs_bindgen_c08badd61bb4544e :: + 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:298: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_c08badd61bb4544e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_f56f9862979f5d4b" hs_bindgen_f56f9862979f5d4b :: + 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:306: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_f56f9862979f5d4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_649eac91f7a991b9" hs_bindgen_649eac91f7a991b9 :: + 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:316: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_649eac91f7a991b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_55e76379f134ed8f" hs_bindgen_55e76379f134ed8f :: + 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:326: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_55e76379f134ed8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_5b3f4a95361bc6de" hs_bindgen_5b3f4a95361bc6de :: + 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:336: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_5b3f4a95361bc6de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_93a0226b3f7c0033" hs_bindgen_93a0226b3f7c0033 :: + 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:343: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_93a0226b3f7c0033 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_7f5b755451067036" hs_bindgen_7f5b755451067036 :: + 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:357: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_7f5b755451067036 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_06e380172229b059" hs_bindgen_06e380172229b059 :: + 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:365: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_06e380172229b059 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_d9da1999562e8bac" hs_bindgen_d9da1999562e8bac :: + 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:373: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_d9da1999562e8bac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_b88937272878d3db" hs_bindgen_b88937272878d3db :: + 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:381: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_b88937272878d3db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_9dcc36b4a4f6543d" hs_bindgen_9dcc36b4a4f6543d :: + 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:390: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_9dcc36b4a4f6543d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_0d7c864f485d69d0" hs_bindgen_0d7c864f485d69d0 :: + 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:400: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_0d7c864f485d69d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_87f9b142b8e80aa3" hs_bindgen_87f9b142b8e80aa3 :: + 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:408: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_87f9b142b8e80aa3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_4a46b2093e45fe3c" hs_bindgen_4a46b2093e45fe3c :: + 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:415: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_4a46b2093e45fe3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_6c7b0423e3f5e095" hs_bindgen_6c7b0423e3f5e095 :: + 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:423: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_6c7b0423e3f5e095 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_02c8022b57fd65a1" hs_bindgen_02c8022b57fd65a1 :: + 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:438: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_02c8022b57fd65a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_9bccc82012d4696f" hs_bindgen_9bccc82012d4696f :: + 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:446: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_9bccc82012d4696f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_262b9917c8b147fa" hs_bindgen_262b9917c8b147fa :: + 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:455: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_262b9917c8b147fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_d73d09132df13f23" hs_bindgen_d73d09132df13f23 :: + 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:464: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_d73d09132df13f23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_cca995a0da7b5c2e" hs_bindgen_cca995a0da7b5c2e :: + 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:473: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_cca995a0da7b5c2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_7f7d23e4bca5f244" hs_bindgen_7f7d23e4bca5f244 :: + 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:483: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_7f7d23e4bca5f244 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_bd53c0de2bee345e" hs_bindgen_bd53c0de2bee345e :: + 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:491: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_bd53c0de2bee345e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_2a63af68d4eee8fb" hs_bindgen_2a63af68d4eee8fb :: + 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:499: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_2a63af68d4eee8fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_4d5b85b8a6e4fc1e" hs_bindgen_4d5b85b8a6e4fc1e :: + 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:509: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_4d5b85b8a6e4fc1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_29606a9739d479bb" hs_bindgen_29606a9739d479bb :: + 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:519: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_29606a9739d479bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_fa7215bc593a390b" hs_bindgen_fa7215bc593a390b :: + 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:533: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_fa7215bc593a390b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_e84916571fe51133" hs_bindgen_e84916571fe51133 :: + 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:538: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_e84916571fe51133 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_2ee1c92175b645fe" hs_bindgen_2ee1c92175b645fe :: + 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:543: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_2ee1c92175b645fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_03980f7ea3c456bf" hs_bindgen_03980f7ea3c456bf :: + 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:548: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_03980f7ea3c456bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_0b89f1419677dfb1" hs_bindgen_0b89f1419677dfb1 :: + 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:553: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_0b89f1419677dfb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_b5a26cc4bf9b5ef2" hs_bindgen_b5a26cc4bf9b5ef2 :: + 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:558: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_b5a26cc4bf9b5ef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_74671ccef010e71a" hs_bindgen_74671ccef010e71a :: + 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:565: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_74671ccef010e71a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_65b5661bc5418205" hs_bindgen_65b5661bc5418205 :: + 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:570: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_65b5661bc5418205 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_aa2a3ec6dccd9208" hs_bindgen_aa2a3ec6dccd9208 :: + 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:576: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_aa2a3ec6dccd9208 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_e6472d110af779c6" hs_bindgen_e6472d110af779c6 :: + 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:582: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_e6472d110af779c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_bc3014f3bd051370" hs_bindgen_bc3014f3bd051370 :: + 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:588: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_bc3014f3bd051370 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_a72cb1098d261e6c" hs_bindgen_a72cb1098d261e6c :: + 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:594: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_a72cb1098d261e6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_4c6cd6b22d934d93" hs_bindgen_4c6cd6b22d934d93 :: + 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:599: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_4c6cd6b22d934d93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_876a707956e66a44" hs_bindgen_876a707956e66a44 :: + 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:609: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_876a707956e66a44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_f868ca3886b896cb" hs_bindgen_f868ca3886b896cb :: + 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:614: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_f868ca3886b896cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_b02b5353e48fea4d" hs_bindgen_b02b5353e48fea4d :: + 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:619: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_b02b5353e48fea4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_a876415b19e1454a" hs_bindgen_a876415b19e1454a :: + 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:627: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_a876415b19e1454a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_fdfebedfcd156f96" hs_bindgen_fdfebedfcd156f96 :: + 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:639: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_fdfebedfcd156f96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_59c467ed01590c39" hs_bindgen_59c467ed01590c39 :: + 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:645: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_59c467ed01590c39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_6f83e8f03e7fd369" hs_bindgen_6f83e8f03e7fd369 :: + 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:664: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_6f83e8f03e7fd369 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_e6c9ad724d88b9e0" hs_bindgen_e6c9ad724d88b9e0 :: + 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:697: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_e6c9ad724d88b9e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_80aabb2b59b6821f" hs_bindgen_80aabb2b59b6821f :: + 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:721: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_80aabb2b59b6821f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_12724fcf7df6cf0f" hs_bindgen_12724fcf7df6cf0f :: + 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:748: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_12724fcf7df6cf0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_e51d05bf6a3ee3c2" hs_bindgen_e51d05bf6a3ee3c2 :: + 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:767: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_e51d05bf6a3ee3c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_34476a542c9be04a" hs_bindgen_34476a542c9be04a :: + 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:790: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_34476a542c9be04a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_5086b32cc14028f2" hs_bindgen_5086b32cc14028f2 :: + 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:808: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_5086b32cc14028f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_aba9100cc1b0cdf6" hs_bindgen_aba9100cc1b0cdf6 :: + 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:814: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_aba9100cc1b0cdf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_6bf8c6e74dbfabb6" hs_bindgen_6bf8c6e74dbfabb6 :: + 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:820: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_6bf8c6e74dbfabb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_11c506f19eeb8e28" hs_bindgen_11c506f19eeb8e28 :: + 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:825: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_11c506f19eeb8e28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_b157539cbf8dbac6" hs_bindgen_b157539cbf8dbac6 :: + 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:831: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_b157539cbf8dbac6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_50aea5b5e2afebd2" hs_bindgen_50aea5b5e2afebd2 :: + 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:837: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_50aea5b5e2afebd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_d67c57d0319e3181" hs_bindgen_d67c57d0319e3181 :: + 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:843: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_d67c57d0319e3181 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_525cfa628165178f" hs_bindgen_525cfa628165178f :: + 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:851: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_525cfa628165178f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_58d56961a8b4239c" hs_bindgen_58d56961a8b4239c :: + 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:861: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_58d56961a8b4239c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_41f5f994653d59ba" hs_bindgen_41f5f994653d59ba :: + 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:874: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_41f5f994653d59ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_77214274e480959d" hs_bindgen_77214274e480959d :: + 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:880: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_77214274e480959d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_d1379604f721bfa6" hs_bindgen_d1379604f721bfa6 :: + 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:885: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_d1379604f721bfa6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_fbdae87b134c863b" hs_bindgen_fbdae87b134c863b :: + 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:890: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_fbdae87b134c863b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_28719e4197a66377" hs_bindgen_28719e4197a66377 :: + 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:895: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_28719e4197a66377 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_49b5a4658ecbe652" hs_bindgen_49b5a4658ecbe652 :: + 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:900: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_49b5a4658ecbe652 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_2453a4b87d6f4210" hs_bindgen_2453a4b87d6f4210 :: + 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:905: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_2453a4b87d6f4210 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_51370941b96931aa" hs_bindgen_51370941b96931aa :: + 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:910: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_51370941b96931aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_55136ecf4f5c72aa" hs_bindgen_55136ecf4f5c72aa :: + 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:916: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_55136ecf4f5c72aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_77f402e848e5cac6" hs_bindgen_77f402e848e5cac6 :: + 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:921: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_77f402e848e5cac6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_3f6aed97639087b9" hs_bindgen_3f6aed97639087b9 :: + 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:926: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_3f6aed97639087b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_a8a62a5358b68577" hs_bindgen_a8a62a5358b68577 :: + 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:931: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_a8a62a5358b68577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_9c85d8247695a2f8" hs_bindgen_9c85d8247695a2f8 :: + 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:936: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_9c85d8247695a2f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_c23afd2bacada091" hs_bindgen_c23afd2bacada091 :: + 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:941: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_c23afd2bacada091 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_7a479c4c1e1700c4" hs_bindgen_7a479c4c1e1700c4 :: + 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:948: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_7a479c4c1e1700c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_22151dae4680e17f" hs_bindgen_22151dae4680e17f :: + 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:953: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_22151dae4680e17f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_7ab7786c7b0150a2" hs_bindgen_7ab7786c7b0150a2 :: + 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:955: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_7ab7786c7b0150a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_93b18b63c404913a" hs_bindgen_93b18b63c404913a :: + 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:957: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_93b18b63c404913a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_dcf3c2866a437be4" hs_bindgen_dcf3c2866a437be4 :: + 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:959: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_dcf3c2866a437be4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_42297785f1d4de08" hs_bindgen_42297785f1d4de08 :: + 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:960: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_42297785f1d4de08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_fff348af10fa54e9" hs_bindgen_fff348af10fa54e9 :: + 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:962: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_fff348af10fa54e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_5cee733550af3ecc" hs_bindgen_5cee733550af3ecc :: + 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:963: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_5cee733550af3ecc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_43dcd4a771d2e786" hs_bindgen_43dcd4a771d2e786 :: + 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:965: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_43dcd4a771d2e786 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_afc1ed3c1310b1f8" hs_bindgen_afc1ed3c1310b1f8 :: + 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:966: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_afc1ed3c1310b1f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_70644b03a8188d47" hs_bindgen_70644b03a8188d47 :: + 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:967: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_70644b03a8188d47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_1749fd80bd32355e" hs_bindgen_1749fd80bd32355e :: + 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:970: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_1749fd80bd32355e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_f4b1e117b0677f3a" hs_bindgen_f4b1e117b0677f3a :: + 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:973: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_f4b1e117b0677f3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_7be7bad505c48825" hs_bindgen_7be7bad505c48825 :: + 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:980: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_7be7bad505c48825 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_e125972f9dd58394" hs_bindgen_e125972f9dd58394 :: + 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:987: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_e125972f9dd58394 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_a1612d989c1b53b3" hs_bindgen_a1612d989c1b53b3 :: + 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:992: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_a1612d989c1b53b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_a8673af39aadf77b" hs_bindgen_a8673af39aadf77b :: + 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:996: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_a8673af39aadf77b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_4016dd5e3200f38f" hs_bindgen_4016dd5e3200f38f :: + 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:998: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_4016dd5e3200f38f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_8e8907da751afd8d" hs_bindgen_8e8907da751afd8d :: + 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:999: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_8e8907da751afd8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_21de4854953e4205" hs_bindgen_21de4854953e4205 :: + 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:1001: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_21de4854953e4205 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_31218b1bd89d3215" hs_bindgen_31218b1bd89d3215 :: + 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:1003: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_31218b1bd89d3215 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_ea37b74c8fe36f40" hs_bindgen_ea37b74c8fe36f40 :: + 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:1006: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_ea37b74c8fe36f40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_efe3a5ef3d74ae08" hs_bindgen_efe3a5ef3d74ae08 :: + 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:1008: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_efe3a5ef3d74ae08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_562b7d9205568e7d" hs_bindgen_562b7d9205568e7d :: + 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:1015: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_562b7d9205568e7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_18eba22b82760420" hs_bindgen_18eba22b82760420 :: + 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:1022: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_18eba22b82760420 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_1155fee8f7671763" hs_bindgen_1155fee8f7671763 :: + 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:1027: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_1155fee8f7671763 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_11802f51649365e0" hs_bindgen_11802f51649365e0 :: + 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:1032: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_11802f51649365e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_98e05029315f6748" hs_bindgen_98e05029315f6748 :: + 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:1050: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_98e05029315f6748 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_14a27e21db6a30ef" hs_bindgen_14a27e21db6a30ef :: + 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:1061: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_14a27e21db6a30ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_4feadde04b56d397" hs_bindgen_4feadde04b56d397 :: + 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:1077: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_4feadde04b56d397 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_0bf456ee48d8b8e2" hs_bindgen_0bf456ee48d8b8e2 :: + 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:1081: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_0bf456ee48d8b8e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_9b77444d2d62f491" hs_bindgen_9b77444d2d62f491 :: + 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:1084: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_9b77444d2d62f491 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_9af352560f09bba4" hs_bindgen_9af352560f09bba4 :: + 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:1086: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_9af352560f09bba4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_f10bf87ceb45d528" hs_bindgen_f10bf87ceb45d528 :: + 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:1088: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_f10bf87ceb45d528 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_eb81a041bffa3102" hs_bindgen_eb81a041bffa3102 :: + 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:1090: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_eb81a041bffa3102 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_c49664f5de9d3831" hs_bindgen_c49664f5de9d3831 :: + 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:1092: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_c49664f5de9d3831 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_b94a48b7986f394d" hs_bindgen_b94a48b7986f394d :: + 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:1112: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_b94a48b7986f394d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_f0fa5545170db79b" hs_bindgen_f0fa5545170db79b :: + 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:1134: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_f0fa5545170db79b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_3258d92286eea54c" hs_bindgen_3258d92286eea54c :: + 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:1142: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_3258d92286eea54c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_eb1c6c3188b7db25" hs_bindgen_eb1c6c3188b7db25 :: + 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:1147: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_eb1c6c3188b7db25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_3851972ceb78d653" hs_bindgen_3851972ceb78d653 :: + 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:1159: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_3851972ceb78d653 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_33374861ef0f39b9" hs_bindgen_33374861ef0f39b9 :: + 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:1164: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_33374861ef0f39b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_c9754c4d866a095f" hs_bindgen_c9754c4d866a095f :: + 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:1169: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_c9754c4d866a095f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_8a08372a724e78c1" hs_bindgen_8a08372a724e78c1 :: + 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:1171: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_8a08372a724e78c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_f73275b9e39e91ba" hs_bindgen_f73275b9e39e91ba :: + 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:1178: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_f73275b9e39e91ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_d45d7dd88c8d6654" hs_bindgen_d45d7dd88c8d6654 :: + 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:1193: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_d45d7dd88c8d6654 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_f2b0ba1bd78fab5a" hs_bindgen_f2b0ba1bd78fab5a :: + 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:1208: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_f2b0ba1bd78fab5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_40cd4338fcc27231" hs_bindgen_40cd4338fcc27231 :: + 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:1225: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_40cd4338fcc27231 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_1c1619b0abb634f7" hs_bindgen_1c1619b0abb634f7 :: + 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:1240: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_1c1619b0abb634f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_9a785b9abd266f09" hs_bindgen_9a785b9abd266f09 :: + 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:1256: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_9a785b9abd266f09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_6b3144406930516f" hs_bindgen_6b3144406930516f :: + 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:1271: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_6b3144406930516f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_a3e6fd1d34c5eee3" hs_bindgen_a3e6fd1d34c5eee3 :: + 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:1282: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_a3e6fd1d34c5eee3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_d3f16aa9348bb784" hs_bindgen_d3f16aa9348bb784 :: + 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:1284: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_d3f16aa9348bb784 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_e9f898c37a462927" hs_bindgen_e9f898c37a462927 :: + 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:1286: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_e9f898c37a462927 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_bf2c77b0cb7a2044" hs_bindgen_bf2c77b0cb7a2044 :: + 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:1291: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_bf2c77b0cb7a2044 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_be4f4ffcce16b9aa" hs_bindgen_be4f4ffcce16b9aa :: + 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:1296: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_be4f4ffcce16b9aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_dccb7235f83b8a73" hs_bindgen_dccb7235f83b8a73 :: + 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:1298: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_dccb7235f83b8a73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_44a26174a627818e" hs_bindgen_44a26174a627818e :: + 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:1303: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_44a26174a627818e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_69b54c951633427f" hs_bindgen_69b54c951633427f :: + 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:1305: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_69b54c951633427f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_16b6f04f280be643" hs_bindgen_16b6f04f280be643 :: + 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:1308: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_16b6f04f280be643 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_45c1ef2c1fe2aff5" hs_bindgen_45c1ef2c1fe2aff5 :: + 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:1313: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_45c1ef2c1fe2aff5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_0d9f53c80ba005e5" hs_bindgen_0d9f53c80ba005e5 :: + 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:1318: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_0d9f53c80ba005e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_33ef0e9e2b41f67c" hs_bindgen_33ef0e9e2b41f67c :: + 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:1320: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_33ef0e9e2b41f67c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_9c0a3886d297de20" hs_bindgen_9c0a3886d297de20 :: + 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:1325: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_9c0a3886d297de20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_64159be9b65898f8" hs_bindgen_64159be9b65898f8 :: + 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:1327: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_64159be9b65898f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_813b45eb7787b9b3" hs_bindgen_813b45eb7787b9b3 :: + 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:1330: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_813b45eb7787b9b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_437b59a48d4a2d1b" hs_bindgen_437b59a48d4a2d1b :: + 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:1332: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_437b59a48d4a2d1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_ddd2722823a374ec" hs_bindgen_ddd2722823a374ec :: + 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:1334: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_ddd2722823a374ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_9eed697569305a60" hs_bindgen_9eed697569305a60 :: + 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:1336: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_9eed697569305a60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_b13f1df670e76338" hs_bindgen_b13f1df670e76338 :: + 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:1338: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_b13f1df670e76338 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_2a331722340745c2" hs_bindgen_2a331722340745c2 :: + 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:1341: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_2a331722340745c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_e078bf878bbe1d36" hs_bindgen_e078bf878bbe1d36 :: + 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:1343: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_e078bf878bbe1d36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_a46c6d200ebd9b3d" hs_bindgen_a46c6d200ebd9b3d :: + 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:1346: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_a46c6d200ebd9b3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_a20a8cdfff5d8454" hs_bindgen_a20a8cdfff5d8454 :: + 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:1348: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_a20a8cdfff5d8454 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_25715227c09c7023" hs_bindgen_25715227c09c7023 :: + 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:1354: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_25715227c09c7023 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_1594dca9d0d7100c" hs_bindgen_1594dca9d0d7100c :: + 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:1357: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_1594dca9d0d7100c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_25db139faf335689" hs_bindgen_25db139faf335689 :: + 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:1360: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_25db139faf335689 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_8e39fe67420b1c45" hs_bindgen_8e39fe67420b1c45 :: + 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:1363: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_8e39fe67420b1c45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_33aaed7bbc091adc" hs_bindgen_33aaed7bbc091adc :: + 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:1365: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_33aaed7bbc091adc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_40e24e57c42bc01a" hs_bindgen_40e24e57c42bc01a :: + 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:1367: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_40e24e57c42bc01a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_85294fb2388d0bc9" hs_bindgen_85294fb2388d0bc9 :: + 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:1369: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_85294fb2388d0bc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_79bda72693975679" hs_bindgen_79bda72693975679 :: + 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:1384: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_79bda72693975679 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_e56b1c6d13fc423f" hs_bindgen_e56b1c6d13fc423f :: + 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:1398: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_e56b1c6d13fc423f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_dda62d86fa0e7d9f" hs_bindgen_dda62d86fa0e7d9f :: + 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:1416: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_dda62d86fa0e7d9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_33d2197f9d0cb1e0" hs_bindgen_33d2197f9d0cb1e0 :: + 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:1431: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_33d2197f9d0cb1e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_8334b25cf13f7bf0" hs_bindgen_8334b25cf13f7bf0 :: + 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:1437: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_8334b25cf13f7bf0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_1582fd43a4f0fdfc" hs_bindgen_1582fd43a4f0fdfc :: + 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:1439: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_1582fd43a4f0fdfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_7079a54f45fd9ede" hs_bindgen_7079a54f45fd9ede :: + 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:1441: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_7079a54f45fd9ede + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_093669f8239d91ff" hs_bindgen_093669f8239d91ff :: + 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:1443: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_093669f8239d91ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_4d9bc25ba29de55f" hs_bindgen_4d9bc25ba29de55f :: + 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:1449: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_4d9bc25ba29de55f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_10703d63c004bbe7" hs_bindgen_10703d63c004bbe7 :: + 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:1451: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_10703d63c004bbe7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_bf695e9976a80f00" hs_bindgen_bf695e9976a80f00 :: + 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:1453: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_bf695e9976a80f00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_69658e0b90b2d82b" hs_bindgen_69658e0b90b2d82b :: + 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:1455: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_69658e0b90b2d82b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_d9e211fd28ed393a" hs_bindgen_d9e211fd28ed393a :: + 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:1461: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_d9e211fd28ed393a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_6130404349e32c1d" hs_bindgen_6130404349e32c1d :: + 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:1463: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_6130404349e32c1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_211e4265d5972509" hs_bindgen_211e4265d5972509 :: + 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:1465: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_211e4265d5972509 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3eef3ed9103a682f" hs_bindgen_3eef3ed9103a682f :: + 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:1467: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_3eef3ed9103a682f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_fe99fc51f95089ba" hs_bindgen_fe99fc51f95089ba :: + 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:1473: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_fe99fc51f95089ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_8280cdd0512da518" hs_bindgen_8280cdd0512da518 :: + 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:1475: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_8280cdd0512da518 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_ba8dae651668a261" hs_bindgen_ba8dae651668a261 :: + 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:1477: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_ba8dae651668a261 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_381f8318060549c3" hs_bindgen_381f8318060549c3 :: + 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:1479: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_381f8318060549c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_58b385f63f092db9" hs_bindgen_58b385f63f092db9 :: + 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:1485: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_58b385f63f092db9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_ca92747cc32c3dc2" hs_bindgen_ca92747cc32c3dc2 :: + 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:1487: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_ca92747cc32c3dc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_59dbefdf75dbff75" hs_bindgen_59dbefdf75dbff75 :: + 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:1490: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_59dbefdf75dbff75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_59e8d7582a77db90" hs_bindgen_59e8d7582a77db90 :: + 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:1493: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_59e8d7582a77db90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_693b5c59f514a09e" hs_bindgen_693b5c59f514a09e :: + 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:1499: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_693b5c59f514a09e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_487ed3b0016087b5" hs_bindgen_487ed3b0016087b5 :: + 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:1502: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_487ed3b0016087b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_0a792e809729f834" hs_bindgen_0a792e809729f834 :: + 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:1505: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_0a792e809729f834 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_e055a3b7fb6fd052" hs_bindgen_e055a3b7fb6fd052 :: + 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:1508: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_e055a3b7fb6fd052 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_86a52f588cd2d454" hs_bindgen_86a52f588cd2d454 :: + 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:1511: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_86a52f588cd2d454 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_90b3eb062453007b" hs_bindgen_90b3eb062453007b :: + 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:1514: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_90b3eb062453007b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_84bbc6d5d5756d93" hs_bindgen_84bbc6d5d5756d93 :: + 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:1517: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_84bbc6d5d5756d93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_6258ac4f376cd45b" hs_bindgen_6258ac4f376cd45b :: + 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:1521: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_6258ac4f376cd45b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_30e357979a98640e" hs_bindgen_30e357979a98640e :: + 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:1525: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_30e357979a98640e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_471a75280edbcc88" hs_bindgen_471a75280edbcc88 :: + 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:1528: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_471a75280edbcc88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_a7cf1bcce23d78b4" hs_bindgen_a7cf1bcce23d78b4 :: + 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:1535: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_a7cf1bcce23d78b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_5e914dc4cfa60c51" hs_bindgen_5e914dc4cfa60c51 :: + 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:1543: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_5e914dc4cfa60c51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_18e410af6dd482e7" hs_bindgen_18e410af6dd482e7 :: + 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:1548: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_18e410af6dd482e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_29f5cc643fde682c" hs_bindgen_29f5cc643fde682c :: + 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:1551: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_29f5cc643fde682c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_084684cef97a0cfc" hs_bindgen_084684cef97a0cfc :: + 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:1554: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_084684cef97a0cfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_6bec3c29c24aea9e" hs_bindgen_6bec3c29c24aea9e :: + 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:1567: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_6bec3c29c24aea9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_be17d726ff713fd7" hs_bindgen_be17d726ff713fd7 :: + 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:1572: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_be17d726ff713fd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_0ea9dba62fc455b0" hs_bindgen_0ea9dba62fc455b0 :: + 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:1575: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_0ea9dba62fc455b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_db5da4354895e43f" hs_bindgen_db5da4354895e43f :: + 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:1578: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_db5da4354895e43f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_0e3b090d82bf1d9d" hs_bindgen_0e3b090d82bf1d9d :: + 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:1590: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_0e3b090d82bf1d9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_1ac00b9bbeb39ee8" hs_bindgen_1ac00b9bbeb39ee8 :: + 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:1595: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_1ac00b9bbeb39ee8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_a662d630c7d394d6" hs_bindgen_a662d630c7d394d6 :: + 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:1597: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_a662d630c7d394d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_7e0819dc22ff9e61" hs_bindgen_7e0819dc22ff9e61 :: + 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:1599: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_7e0819dc22ff9e61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_d3443353c0d05976" hs_bindgen_d3443353c0d05976 :: + 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:1602: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_d3443353c0d05976 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_b4be8a3482828a6b" hs_bindgen_b4be8a3482828a6b :: + 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:1610: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_b4be8a3482828a6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_540d39d78fb95fad" hs_bindgen_540d39d78fb95fad :: + 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:1618: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_540d39d78fb95fad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_a8944193ea889a44" hs_bindgen_a8944193ea889a44 :: + 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:1620: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_a8944193ea889a44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_5f71fb8eadce65dc" hs_bindgen_5f71fb8eadce65dc :: + 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:1621: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_5f71fb8eadce65dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_0edd9551f224ca90" hs_bindgen_0edd9551f224ca90 :: + 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:1629: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_0edd9551f224ca90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_24ea2cf1b76ef2dc" hs_bindgen_24ea2cf1b76ef2dc :: + 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:1634: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_24ea2cf1b76ef2dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_3a9276f40d410485" hs_bindgen_3a9276f40d410485 :: + 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:1636: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_3a9276f40d410485 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_c7df980707970145" hs_bindgen_c7df980707970145 :: + 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:1639: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_c7df980707970145 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_abf76b9a7e766cfc" hs_bindgen_abf76b9a7e766cfc :: + 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:1641: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_abf76b9a7e766cfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_ec11b1782aead0b6" hs_bindgen_ec11b1782aead0b6 :: + 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:1644: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_ec11b1782aead0b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_0c00036b1c458ba8" hs_bindgen_0c00036b1c458ba8 :: + 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:1658: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_0c00036b1c458ba8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_b3ac1f744086ecee" hs_bindgen_b3ac1f744086ecee :: + 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:1663: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_b3ac1f744086ecee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_8b4c90864d469a2f" hs_bindgen_8b4c90864d469a2f :: + 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:1666: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_8b4c90864d469a2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_3e8594d76474ec68" hs_bindgen_3e8594d76474ec68 :: + 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:1671: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_3e8594d76474ec68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_b255988005aa0cec" hs_bindgen_b255988005aa0cec :: + 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:1675: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_b255988005aa0cec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_aa1f62838cd371f5" hs_bindgen_aa1f62838cd371f5 :: + 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:1688: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_aa1f62838cd371f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_a3d0e3122fab464c" hs_bindgen_a3d0e3122fab464c :: + 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:1693: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_a3d0e3122fab464c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_990907f61db0d0b6" hs_bindgen_990907f61db0d0b6 :: + 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:1696: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_990907f61db0d0b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_a4d6e4220adfd5bf" hs_bindgen_a4d6e4220adfd5bf :: + 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:1701: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_a4d6e4220adfd5bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_b6226b8d9ca87c85" hs_bindgen_b6226b8d9ca87c85 :: + 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:1714: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_b6226b8d9ca87c85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_6ba3af1ccd521950" hs_bindgen_6ba3af1ccd521950 :: + 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:1721: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_6ba3af1ccd521950 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_f5f650e3e8cc4c23" hs_bindgen_f5f650e3e8cc4c23 :: + 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:1736: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_f5f650e3e8cc4c23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_fe2d548b3609f216" hs_bindgen_fe2d548b3609f216 :: + 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:1751: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_fe2d548b3609f216 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_e2efb228292003bd" hs_bindgen_e2efb228292003bd :: + 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:1752: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_e2efb228292003bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_bcb41e5e4e0b9e15" hs_bindgen_bcb41e5e4e0b9e15 :: + 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:1757: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_bcb41e5e4e0b9e15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_6e27d630cc9276d0" hs_bindgen_6e27d630cc9276d0 :: + 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:1759: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_6e27d630cc9276d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_8c7430f663ce1c90" hs_bindgen_8c7430f663ce1c90 :: + 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:1762: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_8c7430f663ce1c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_c7e5ab2274ad0391" hs_bindgen_c7e5ab2274ad0391 :: + 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:1763: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_c7e5ab2274ad0391 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_16b1051881ce3c37" hs_bindgen_16b1051881ce3c37 :: + 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:1765: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_16b1051881ce3c37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_29f589cbbc367701" hs_bindgen_29f589cbbc367701 :: + 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:1766: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_29f589cbbc367701 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_aa2bc01345d12bf7" hs_bindgen_aa2bc01345d12bf7 :: + 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:1769: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_aa2bc01345d12bf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_64ab5d0795cd76ec" hs_bindgen_64ab5d0795cd76ec :: + 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:1771: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_64ab5d0795cd76ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_12c27985600a3433" hs_bindgen_12c27985600a3433 :: + 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:1772: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_12c27985600a3433 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_ece2901601a2d208" hs_bindgen_ece2901601a2d208 :: + 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:1773: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_ece2901601a2d208 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_0ddbf7e7bb671e81" hs_bindgen_0ddbf7e7bb671e81 :: + 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:1775: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_0ddbf7e7bb671e81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_b507437d932def61" hs_bindgen_b507437d932def61 :: + 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:1778: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_b507437d932def61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_f8f04255cf2f0397" hs_bindgen_f8f04255cf2f0397 :: + 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:1780: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_f8f04255cf2f0397 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_c5af886f3dea1864" hs_bindgen_c5af886f3dea1864 :: + 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:1783: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_c5af886f3dea1864 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_a1e77a1b81b1b261" hs_bindgen_a1e77a1b81b1b261 :: + 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:1787: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_a1e77a1b81b1b261 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_bc4fb58e586fd9cc" hs_bindgen_bc4fb58e586fd9cc :: + 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:1790: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_bc4fb58e586fd9cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_4c41aee3df30e2ff" hs_bindgen_4c41aee3df30e2ff :: + 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:1793: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_4c41aee3df30e2ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_1a4df6fc33bbf760" hs_bindgen_1a4df6fc33bbf760 :: + 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:1809: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_1a4df6fc33bbf760 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_2e07aab7e452bab9" hs_bindgen_2e07aab7e452bab9 :: + 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:1815: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_2e07aab7e452bab9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_c599b4ead34764a6" hs_bindgen_c599b4ead34764a6 :: + 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:1826: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_c599b4ead34764a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_8644c280c74b135b" hs_bindgen_8644c280c74b135b :: + 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:1841: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_8644c280c74b135b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_8733c040b3c0a963" hs_bindgen_8733c040b3c0a963 :: + 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:1849: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_8733c040b3c0a963 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_65e3816ad4930aad" hs_bindgen_65e3816ad4930aad :: + 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:1851: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_65e3816ad4930aad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_c31a63010368ab68" hs_bindgen_c31a63010368ab68 :: + 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:1853: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_c31a63010368ab68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_686d66251cbadfdd" hs_bindgen_686d66251cbadfdd :: + 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:1859: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_686d66251cbadfdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_573154686d78373c" hs_bindgen_573154686d78373c :: + 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:1866: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_573154686d78373c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_a3a390b5ae7346c7" hs_bindgen_a3a390b5ae7346c7 :: + 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:1884: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_a3a390b5ae7346c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_3ea23732ffb229f4" hs_bindgen_3ea23732ffb229f4 :: + 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:1893: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_3ea23732ffb229f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_f17b8696a3d0b731" hs_bindgen_f17b8696a3d0b731 :: + 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:1901: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_f17b8696a3d0b731 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_56df5f802030ba48" hs_bindgen_56df5f802030ba48 :: + 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:1911: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_56df5f802030ba48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_2817b505dd04990a" hs_bindgen_2817b505dd04990a :: + 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:1930: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_2817b505dd04990a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_67353fa6fc62b909" hs_bindgen_67353fa6fc62b909 :: + 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:1937: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_67353fa6fc62b909 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_87d40bcdf8f3c922" hs_bindgen_87d40bcdf8f3c922 :: + 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:1943: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_87d40bcdf8f3c922 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_2e72cc023ec77832" hs_bindgen_2e72cc023ec77832 :: + 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:1949: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_2e72cc023ec77832 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_87ff976fde7fffe3" hs_bindgen_87ff976fde7fffe3 :: + 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:1962: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_87ff976fde7fffe3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_74880ba2fdaa97d4" hs_bindgen_74880ba2fdaa97d4 :: + 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:1970: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_74880ba2fdaa97d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_d60be0a667ecfa43" hs_bindgen_d60be0a667ecfa43 :: + 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:1979: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_d60be0a667ecfa43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_553ebf6002ebf8d8" hs_bindgen_553ebf6002ebf8d8 :: + 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:1990: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_553ebf6002ebf8d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_5b6c3e61329b447d" hs_bindgen_5b6c3e61329b447d :: + 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:2001: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_5b6c3e61329b447d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_899ff2b61db70f9b" hs_bindgen_899ff2b61db70f9b :: + 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:2008: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_899ff2b61db70f9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_3c7b031a618374c2" hs_bindgen_3c7b031a618374c2 :: + 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:2011: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_3c7b031a618374c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_32ccb9e6377dedb3" hs_bindgen_32ccb9e6377dedb3 :: + 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:2014: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_32ccb9e6377dedb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_5d67c700ccf08e30" hs_bindgen_5d67c700ccf08e30 :: + 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:2026: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_5d67c700ccf08e30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_912c097c372c3416" hs_bindgen_912c097c372c3416 :: + 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:2034: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_912c097c372c3416 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_a0c76a5c4ccbf59c" hs_bindgen_a0c76a5c4ccbf59c :: + 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:2049: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_a0c76a5c4ccbf59c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_e668144401423031" hs_bindgen_e668144401423031 :: + 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:2068: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_e668144401423031 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_0ce58bbf34b4c195" hs_bindgen_0ce58bbf34b4c195 :: + 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:2084: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_0ce58bbf34b4c195 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_353d1967b68dc4b2" hs_bindgen_353d1967b68dc4b2 :: + 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:2111: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_353d1967b68dc4b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_cedd74b22309d4c4" hs_bindgen_cedd74b22309d4c4 :: + 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:2129: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_cedd74b22309d4c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_5f6ed65378843d06" hs_bindgen_5f6ed65378843d06 :: + 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:2150: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_5f6ed65378843d06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_d0407624b71f8138" hs_bindgen_d0407624b71f8138 :: + 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:2171: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_d0407624b71f8138 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/Safe.hs new file mode 100644 index 00000000..c9726441 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/Safe.hs @@ -0,0 +1,12599 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_4_0.Safe where + +import Botan.Bindings.Generated.Botan_3_4_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_05b71054e23787ff (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_2ae69152271aa51a (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_454ceb97b4a7ad46 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_88911375a56f132a (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_1662d838605b7fa6 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_868d15573e1895f9 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_a42e2e5778fc4f8f (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_d9b3bf1e32a4cede (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_1b90dba0d2a61143 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_0e113b8ab565c3c5 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6b028382673ca2e (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5fb92f8e9445bb7d (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ef445f64797818a (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9e1a416011942d5e (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_97bd3526bea11574 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_10d937e395024dd6 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_582e770e76bff14f (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_19c03b293830d285 (" + , " 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_c6e4b43059e59a54 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3fd4094dda55c533 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc29f708465b0c4e (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_429e01c2c03fff5e (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_78e834ebac8c8c4e (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e755ffaee501d646 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e5470ccce231a733 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_536e6b5acf1ee70f (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c4e5f5a2aa448c3e (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bdb1f24eaebe47be (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_facbd3303e6efecb (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f21d6da545d01561 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d32b68f35912f48c (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_94dacc7aa543221a (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3d314049a52d3740 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a253f014bbc056e (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bc61396929ae8d68 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e7e7020235f3fca5 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_645c9e4a6478ccad (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a7caf1c8cf18fdf9 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0c9dfc940249db65 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b44879609ca079f8 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_7bf8bf60c4e39ed5 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_73506ab25807ebe0 (" + , " 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_cc44cc8e0a27708f (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2ad2797834f99f05 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bb06713b138d9082 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8a18e3bdfbe6d31e (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e1161a4d9f4678e6 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d160d184cde8e92f (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fa335bae7eaea180 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_89714d86101f0568 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_2f17e5d3f6ab6c3c (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1817846807b56d6 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_84486517e1e6559b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_756fdd3d27c8ad95 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cb0919e668a52103 (" + , " 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_3655b3d3a89eeee2 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a785f12fecc1471d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_0517c16e315675a4 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_59af36fab9e595b3 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7487ae15f1fc5664 (" + , " 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_39ff388775bbcf8a (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_3db30f76d52eeb5f (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_21829f9fcd253258 (" + , " 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_4873a0e7a1227394 (" + , " 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_844c5c917fa12c84 (" + , " 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_21c7830e64ba9b82 (" + , " 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_cff7aabf08af16e8 (" + , " 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_c934f1307e09b050 (" + , " 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_1d1ab24628c4cb38 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_80047c300447e3d2 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_94ade787f74b0bc8 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_b8cf0211632b15cb (" + , " 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_a28489b34242c9da (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_71ce52e8359e83f2 (" + , " 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_424f9b7e4569c5c2 (" + , " 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_5526fec75c31f171 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3743e126cfea760 (" + , " 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_e99254f56499e7c5 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_f76dd89a00d91437 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e4dde9dec4b5f351 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fab258755a50dfd3 (" + , " 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_d09de39e0b5c2793 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_6378256e2a426d86 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc9cd238b0b0b0c3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_133244223494361d (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbc2d15f5f007445 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1215dff05d1792cb (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3c293bd83d15a18b (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f1ec9f99650bb75 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ef9ae5a7fdabc99 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1b1607423e78deec (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c91cf2074129b0ad (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_c503c180adfb15b2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_e2c9e12f479d4990 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_029f8433ea472bae (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_038160899c8bb47f (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_5c85d33f8d936d2f (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_edc33f5e46602c91 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_83e7fcc121a9e54e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d37824b9b6cf2777 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47b18e56cc73bc77 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ee0b7b33059a0fa2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_02e314d1f63e0d74 (" + , " 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_ce49ebadca8eea27 (" + , " 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_37a3ad2bc9a0b800 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8467d7b9975c462d (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_be030a792edef867 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_57e50db656c9f8cb (" + , " 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_f61f0a31974f9146 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1ef0d2f18959d054 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3b2e059a1b76ed78 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b50e2bd459a647d5 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f9939c35a1f355a2 (" + , " 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_d2f0747ccaa7ac97 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1f7287c1d4e30bfa (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c95b79d40c40c628 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e8e48c428d4c0dd (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa09e107e1a2356a (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2fabc723b9c490c0 (" + , " 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_7b9ca654b42bf337 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_552355f6fdb0fda3 (" + , " 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_b77d2e17c68553eb (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d83cee3e51854ba (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_153be7b34aa68dd9 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4fac372bfa85be2b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d58b816764f12dd5 (" + , " 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_9465f44efbaa77f7 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dc5e34d6c6dffec6 (" + , " 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_1011ce95ae1d9112 (" + , " 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_2d7692f9818bd854 (" + , " 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_35e2e7aa5a96d66c (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5603a920be6c624b (" + , " 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_1b05903f4377a635 (" + , " 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_8efd85df41650f78 (" + , " 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_39d1214ae23ee893 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f637e50227c0691 (" + , " 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_e5e37c0eaf9352c1 (" + , " 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_090b50aad1b34d9f (" + , " 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_f3f08978c7c0d7bd (" + , " 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_1c8d6740bf69f194 (" + , " 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_00a97b89cee67fd2 (" + , " 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_782a3bd70940e514 (" + , " 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_833bf54f5818e4e5 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e3b2f498b6464b77 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79d67ff0840d4b23 (" + , " 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_fdaf927e8ee7bdee (" + , " 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_9049f13d96d473d8 (" + , " 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_3895fd03eae90c9e (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d5b93b2a912ebd17 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_25b13fd4f1bf67dd (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cd3ee62f5dffacc6 (" + , " 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_56aa838d4d649418 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c7524243a6dcf8fa (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e351f071fad35538 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a48e4572f08a2c8b (" + , " 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_db59b2ad2eea111d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7ab3675b22ac6013 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1f59f28223df35d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d0641c153d7f6da (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_54dba0caec0e4826 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_94b9b35ccd360279 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0952e259fff3a00c (" + , " 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_47b5e0cfedf25eb8 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_17ab4b2b502c954a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e87e0fa318fdf3b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b4a8194b90d96a70 (" + , " 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_a58532db0188a0cf (" + , " 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_e8d05e566cdb0042 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73be26ab4ad4ece9 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fa1ce55da4d2efd5 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7ee0b3d83aee55b0 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3310c1fbb0977528 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8b762a4014e34b9 (" + , " 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_7f071c0db57e7eed (" + , " 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_1e50890854ec176d (" + , " 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_4551b604dc51f2a1 (" + , " 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_26b254ca94ec80e9 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b58b16cf8d91b465 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d36489b17ec7099e (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50101ec289a5a6d5 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e28ff585362f0d29 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_15f07e93c775ad18 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c37f0d0d5b0bed27 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_758b730dc08c59d6 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5932b1d96ba68b58 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_76a42d8e149d1223 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_27b600f16d6065bf (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bd19c60961558127 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ac07e19dea838342 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ffdba2d05cdd3c6 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_80306915ad55ca78 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6deda284e2264ac0 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ae274dd0566de18 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1ea7dd76a53b72ce (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b0e0051153aa4f25 (" + , " 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_d595e5c035da62dc (" + , " 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_77dcb7b74bbc859d (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_52c270e8c6b63e26 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_26af3325e17a0196 (" + , " 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_cd08bfd9a01be58e (" + , " 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_f4ffcf75e54bec18 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7aa0dcfb766d475a (" + , " 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_4c0b4fcd89e2d9a5 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_97d7f7f0b785b8d1 (" + , " 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_564366b06f05c75c (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_04847ed297c98153 (" + , " 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_299fb8da41c3c304 (" + , " 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_fbaba0abd5380221 (" + , " 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_47661a8e772a2452 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4e0fa4d9ea5a6c13 (" + , " 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_4d070268e36780f1 (" + , " 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_03481ba2485d6155 (" + , " 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_c30f8dbda34c9de8 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_37f322431b0919c7 (" + , " 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_ea4b20156c4cbd3d (" + , " 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_9b80cd8a88bfd74b (" + , " 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_1d94a2b062dd9556 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4328b0d72424c119 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d0b336253d8415c0 (" + , " 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_3d6da7c8edd93d2e (" + , " 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_a01917dbef81541e (" + , " 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_4fca2bf72dfb94fa (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ada0d1c0fd1154cd (" + , " 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_e0af2714d85552d3 (" + , " 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_6a7dfe1dc85fc33b (" + , " 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_e27b8da06a2ca062 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e4d5ba09478503aa (" + , " 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_0f333b8d67f66563 (" + , " 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_6cdc1159e87df67a (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f8d1faf0a230c988 (" + , " 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_4d81b6f9991a63a1 (" + , " 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_9189e9c6a7efa8ed (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6af0de6f34942045 (" + , " 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_ff43fd162f17566b (" + , " 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_aefba414cefb9f8b (" + , " 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_d7606665a994244c (" + , " 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_95556347ea2797f6 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2aa3d3c3494197c0 (" + , " 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_3ca91f0c80576de1 (" + , " 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_8d2886914f22d425 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_93524a7861ff6e6b (" + , " 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_846dd7d03a5d8e3f (" + , " 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_f0de3a6389772fbe (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a384012731ae4618 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ac8cb74170e0ad5 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6f134dc73c35e577 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b7d206b1fcbf0c58 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ef32f801a5125567 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fe9243493ba1daa6 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_facafaa28cf91181 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_85dd951037df5143 (" + , " 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_7041bbb54580a4c4 (" + , " 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_91b93bbf856652b4 (" + , " 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_c83bb7ebfc5444aa (" + , " 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_9228befe7cf1f2da (" + , " 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_8ecf9705f46ac444 (" + , " 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_d763c744fae944bf (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dd9f335a63dd17a0 (" + , " 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_5ac5132374ca9181 (" + , " 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_3ff2957a6f239c64 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_36a6e1aa8e6b8cd4 (" + , " 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_51dd4743f5d1e053 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ad654f826f3bc050 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_893f76f7421b9d18 (" + , " 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_a837b0f47521da42 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_8a5b596f56c631b5 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_481095fc59aee777 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7deb587a9ea0186f (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ea09e42ba9e7e089 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78f60cfa7500e1cb (" + , " 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_4e51ac9531a87dea (" + , " 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_9dd335b51096e46f (" + , " 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_8c2604fd5e7812f3 (" + , " 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_91865306e412607d (" + , " 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_40a4a50f4c9d3772 (" + , " 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_9685ca6731570e56 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_21c94c0ad2a40311 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_975b378aa7634fcf (" + , " 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_e71f24fafb1f8b22 (" + , " 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_db022f277a5c8f93 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_db44e934e68a9486 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c3a047dba2d47e4e (" + , " 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_6509e65b31385e15 (" + , " 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_1ecfea8fe6b9b0b7 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ae56b8230f428729 (" + , " 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_f56d8dbb65696693 (" + , " 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_79d10c0b3792fc01 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_3bade2710870e10e (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9335abda7f7e2163 (" + , " 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_f66557d5c9f6b269 (" + , " 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_da99519a4fc6417c (" + , " 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_5ae2908131f8a9e7 (" + , " 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_adbed589e3e1ad2a (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8fec80ca03d39b91 (" + , " 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_757aa212390314ca (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_05b71054e23787ff" hs_bindgen_05b71054e23787ff :: + 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:158: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_05b71054e23787ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_2ae69152271aa51a" hs_bindgen_2ae69152271aa51a :: + 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:167: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_2ae69152271aa51a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_454ceb97b4a7ad46" hs_bindgen_454ceb97b4a7ad46 :: + 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:174:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_454ceb97b4a7ad46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_88911375a56f132a" hs_bindgen_88911375a56f132a :: + 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:180: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_88911375a56f132a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_1662d838605b7fa6" hs_bindgen_1662d838605b7fa6 :: + 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:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_1662d838605b7fa6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_868d15573e1895f9" hs_bindgen_868d15573e1895f9 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_868d15573e1895f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_a42e2e5778fc4f8f" hs_bindgen_a42e2e5778fc4f8f :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:195:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_a42e2e5778fc4f8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_d9b3bf1e32a4cede" hs_bindgen_d9b3bf1e32a4cede :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:200:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_d9b3bf1e32a4cede + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_1b90dba0d2a61143" hs_bindgen_1b90dba0d2a61143 :: + 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:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_1b90dba0d2a61143 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_0e113b8ab565c3c5" hs_bindgen_0e113b8ab565c3c5 :: + 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:211: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_0e113b8ab565c3c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_b6b028382673ca2e" hs_bindgen_b6b028382673ca2e :: + 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:217: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_b6b028382673ca2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_5fb92f8e9445bb7d" hs_bindgen_5fb92f8e9445bb7d :: + 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:223: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_5fb92f8e9445bb7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_0ef445f64797818a" hs_bindgen_0ef445f64797818a :: + 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:235: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_0ef445f64797818a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_9e1a416011942d5e" hs_bindgen_9e1a416011942d5e :: + 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:245: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_9e1a416011942d5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_97bd3526bea11574" hs_bindgen_97bd3526bea11574 :: + 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:250:28@ + +__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_97bd3526bea11574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_10d937e395024dd6" hs_bindgen_10d937e395024dd6 :: + 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:255: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_10d937e395024dd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_582e770e76bff14f" hs_bindgen_582e770e76bff14f :: + 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:272: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 "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_582e770e76bff14f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_19c03b293830d285" hs_bindgen_19c03b293830d285 :: + 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:284: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_19c03b293830d285 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_c6e4b43059e59a54" hs_bindgen_c6e4b43059e59a54 :: + 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:298: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_c6e4b43059e59a54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_3fd4094dda55c533" hs_bindgen_3fd4094dda55c533 :: + 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:306: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_3fd4094dda55c533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_fc29f708465b0c4e" hs_bindgen_fc29f708465b0c4e :: + 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:316: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_fc29f708465b0c4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_429e01c2c03fff5e" hs_bindgen_429e01c2c03fff5e :: + 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:326: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_429e01c2c03fff5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_78e834ebac8c8c4e" hs_bindgen_78e834ebac8c8c4e :: + 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:336: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_78e834ebac8c8c4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_e755ffaee501d646" hs_bindgen_e755ffaee501d646 :: + 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:343: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_e755ffaee501d646 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_e5470ccce231a733" hs_bindgen_e5470ccce231a733 :: + 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:357: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_e5470ccce231a733 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_536e6b5acf1ee70f" hs_bindgen_536e6b5acf1ee70f :: + 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:365: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_536e6b5acf1ee70f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_c4e5f5a2aa448c3e" hs_bindgen_c4e5f5a2aa448c3e :: + 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:373: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_c4e5f5a2aa448c3e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_bdb1f24eaebe47be" hs_bindgen_bdb1f24eaebe47be :: + 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:381: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_bdb1f24eaebe47be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_facbd3303e6efecb" hs_bindgen_facbd3303e6efecb :: + 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:390: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_facbd3303e6efecb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_f21d6da545d01561" hs_bindgen_f21d6da545d01561 :: + 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:400: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_f21d6da545d01561 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_d32b68f35912f48c" hs_bindgen_d32b68f35912f48c :: + 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:408: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_d32b68f35912f48c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_94dacc7aa543221a" hs_bindgen_94dacc7aa543221a :: + 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:415: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_94dacc7aa543221a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_3d314049a52d3740" hs_bindgen_3d314049a52d3740 :: + 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:423: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_3d314049a52d3740 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_4a253f014bbc056e" hs_bindgen_4a253f014bbc056e :: + 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:438: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_4a253f014bbc056e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_bc61396929ae8d68" hs_bindgen_bc61396929ae8d68 :: + 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:446: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_bc61396929ae8d68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_e7e7020235f3fca5" hs_bindgen_e7e7020235f3fca5 :: + 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:455: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_e7e7020235f3fca5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_645c9e4a6478ccad" hs_bindgen_645c9e4a6478ccad :: + 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:464: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_645c9e4a6478ccad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_a7caf1c8cf18fdf9" hs_bindgen_a7caf1c8cf18fdf9 :: + 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:473: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_a7caf1c8cf18fdf9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_0c9dfc940249db65" hs_bindgen_0c9dfc940249db65 :: + 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:483: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_0c9dfc940249db65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_b44879609ca079f8" hs_bindgen_b44879609ca079f8 :: + 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:491: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_b44879609ca079f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_7bf8bf60c4e39ed5" hs_bindgen_7bf8bf60c4e39ed5 :: + 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:499: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_7bf8bf60c4e39ed5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_73506ab25807ebe0" hs_bindgen_73506ab25807ebe0 :: + 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:509: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_73506ab25807ebe0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_cc44cc8e0a27708f" hs_bindgen_cc44cc8e0a27708f :: + 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:519: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_cc44cc8e0a27708f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_2ad2797834f99f05" hs_bindgen_2ad2797834f99f05 :: + 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:533: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_2ad2797834f99f05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_bb06713b138d9082" hs_bindgen_bb06713b138d9082 :: + 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:538: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_bb06713b138d9082 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_8a18e3bdfbe6d31e" hs_bindgen_8a18e3bdfbe6d31e :: + 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:543: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_8a18e3bdfbe6d31e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_e1161a4d9f4678e6" hs_bindgen_e1161a4d9f4678e6 :: + 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:548: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_e1161a4d9f4678e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_d160d184cde8e92f" hs_bindgen_d160d184cde8e92f :: + 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:553: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_d160d184cde8e92f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_fa335bae7eaea180" hs_bindgen_fa335bae7eaea180 :: + 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:558: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_fa335bae7eaea180 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_89714d86101f0568" hs_bindgen_89714d86101f0568 :: + 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:565: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_89714d86101f0568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_2f17e5d3f6ab6c3c" hs_bindgen_2f17e5d3f6ab6c3c :: + 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:570: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_2f17e5d3f6ab6c3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_e1817846807b56d6" hs_bindgen_e1817846807b56d6 :: + 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:576: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_e1817846807b56d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_84486517e1e6559b" hs_bindgen_84486517e1e6559b :: + 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:582: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_84486517e1e6559b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_756fdd3d27c8ad95" hs_bindgen_756fdd3d27c8ad95 :: + 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:588:5@ + +__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_756fdd3d27c8ad95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_cb0919e668a52103" hs_bindgen_cb0919e668a52103 :: + 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:594:5@ + +__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_cb0919e668a52103 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_3655b3d3a89eeee2" hs_bindgen_3655b3d3a89eeee2 :: + 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:599: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_3655b3d3a89eeee2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_a785f12fecc1471d" hs_bindgen_a785f12fecc1471d :: + 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:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_a785f12fecc1471d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_0517c16e315675a4" hs_bindgen_0517c16e315675a4 :: + 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:614: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_0517c16e315675a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_59af36fab9e595b3" hs_bindgen_59af36fab9e595b3 :: + 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:619: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_59af36fab9e595b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_7487ae15f1fc5664" hs_bindgen_7487ae15f1fc5664 :: + 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_7487ae15f1fc5664 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:627: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_7487ae15f1fc5664 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_39ff388775bbcf8a" hs_bindgen_39ff388775bbcf8a :: + 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:639:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_39ff388775bbcf8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_3db30f76d52eeb5f" hs_bindgen_3db30f76d52eeb5f :: + 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:645:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_3db30f76d52eeb5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_21829f9fcd253258" hs_bindgen_21829f9fcd253258 :: + 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_21829f9fcd253258 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:664: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_21829f9fcd253258 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_4873a0e7a1227394" hs_bindgen_4873a0e7a1227394 :: + 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_4873a0e7a1227394 + +{-| 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:697: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_4873a0e7a1227394 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_844c5c917fa12c84" hs_bindgen_844c5c917fa12c84 :: + 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_844c5c917fa12c84 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:721: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_844c5c917fa12c84 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_21c7830e64ba9b82" hs_bindgen_21c7830e64ba9b82 :: + 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_21c7830e64ba9b82 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:748: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_21c7830e64ba9b82 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_cff7aabf08af16e8" hs_bindgen_cff7aabf08af16e8 :: + 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_cff7aabf08af16e8 + +{-| 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:767: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_cff7aabf08af16e8 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_c934f1307e09b050" hs_bindgen_c934f1307e09b050 :: + 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_c934f1307e09b050 + +{-| 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:790: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_c934f1307e09b050 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_4_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_1d1ab24628c4cb38" hs_bindgen_1d1ab24628c4cb38 :: + 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:808: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_1d1ab24628c4cb38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_80047c300447e3d2" hs_bindgen_80047c300447e3d2 :: + 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:814: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_80047c300447e3d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_94ade787f74b0bc8" hs_bindgen_94ade787f74b0bc8 :: + 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:820: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_94ade787f74b0bc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_b8cf0211632b15cb" hs_bindgen_b8cf0211632b15cb :: + 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_b8cf0211632b15cb + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:825: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_b8cf0211632b15cb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_a28489b34242c9da" hs_bindgen_a28489b34242c9da :: + 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:831: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_a28489b34242c9da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_71ce52e8359e83f2" hs_bindgen_71ce52e8359e83f2 :: + 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_71ce52e8359e83f2 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:837: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_71ce52e8359e83f2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_424f9b7e4569c5c2" hs_bindgen_424f9b7e4569c5c2 :: + 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_424f9b7e4569c5c2 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:843: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_424f9b7e4569c5c2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_5526fec75c31f171" hs_bindgen_5526fec75c31f171 :: + 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:851: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_5526fec75c31f171 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_d3743e126cfea760" hs_bindgen_d3743e126cfea760 :: + 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:861: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_d3743e126cfea760 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_e99254f56499e7c5" hs_bindgen_e99254f56499e7c5 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:874: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_e99254f56499e7c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_f76dd89a00d91437" hs_bindgen_f76dd89a00d91437 :: + 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:880:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_f76dd89a00d91437 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_e4dde9dec4b5f351" hs_bindgen_e4dde9dec4b5f351 :: + 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:885: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_e4dde9dec4b5f351 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_fab258755a50dfd3" hs_bindgen_fab258755a50dfd3 :: + 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:890:28@ + +__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_fab258755a50dfd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_d09de39e0b5c2793" hs_bindgen_d09de39e0b5c2793 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:895:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_d09de39e0b5c2793 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_6378256e2a426d86" hs_bindgen_6378256e2a426d86 :: + 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:900: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_6378256e2a426d86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_bc9cd238b0b0b0c3" hs_bindgen_bc9cd238b0b0b0c3 :: + 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:905: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_bc9cd238b0b0b0c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_133244223494361d" hs_bindgen_133244223494361d :: + 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:910: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_133244223494361d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_fbc2d15f5f007445" hs_bindgen_fbc2d15f5f007445 :: + 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:916: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_fbc2d15f5f007445 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_1215dff05d1792cb" hs_bindgen_1215dff05d1792cb :: + 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:921: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_1215dff05d1792cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_3c293bd83d15a18b" hs_bindgen_3c293bd83d15a18b :: + 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:926: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_3c293bd83d15a18b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_7f1ec9f99650bb75" hs_bindgen_7f1ec9f99650bb75 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:931: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_7f1ec9f99650bb75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_9ef9ae5a7fdabc99" hs_bindgen_9ef9ae5a7fdabc99 :: + 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_9ef9ae5a7fdabc99 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:936: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_9ef9ae5a7fdabc99 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_1b1607423e78deec" hs_bindgen_1b1607423e78deec :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:941: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_1b1607423e78deec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_c91cf2074129b0ad" hs_bindgen_c91cf2074129b0ad :: + 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:948: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_c91cf2074129b0ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_c503c180adfb15b2" hs_bindgen_c503c180adfb15b2 :: + 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:953: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_c503c180adfb15b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_e2c9e12f479d4990" hs_bindgen_e2c9e12f479d4990 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:955: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_e2c9e12f479d4990 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_029f8433ea472bae" hs_bindgen_029f8433ea472bae :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:957: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_029f8433ea472bae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_038160899c8bb47f" hs_bindgen_038160899c8bb47f :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:959: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_038160899c8bb47f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_5c85d33f8d936d2f" hs_bindgen_5c85d33f8d936d2f :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:960: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_5c85d33f8d936d2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_edc33f5e46602c91" hs_bindgen_edc33f5e46602c91 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:962: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_edc33f5e46602c91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_83e7fcc121a9e54e" hs_bindgen_83e7fcc121a9e54e :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:963: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_83e7fcc121a9e54e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_d37824b9b6cf2777" hs_bindgen_d37824b9b6cf2777 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:965: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_d37824b9b6cf2777 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_47b18e56cc73bc77" hs_bindgen_47b18e56cc73bc77 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:966: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_47b18e56cc73bc77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_ee0b7b33059a0fa2" hs_bindgen_ee0b7b33059a0fa2 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:967: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_ee0b7b33059a0fa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_02e314d1f63e0d74" hs_bindgen_02e314d1f63e0d74 :: + 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:970: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_02e314d1f63e0d74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_ce49ebadca8eea27" hs_bindgen_ce49ebadca8eea27 :: + 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:973: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_ce49ebadca8eea27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_37a3ad2bc9a0b800" hs_bindgen_37a3ad2bc9a0b800 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:980: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_37a3ad2bc9a0b800 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_8467d7b9975c462d" hs_bindgen_8467d7b9975c462d :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:987: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_8467d7b9975c462d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_be030a792edef867" hs_bindgen_be030a792edef867 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:992: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_be030a792edef867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_57e50db656c9f8cb" hs_bindgen_57e50db656c9f8cb :: + 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:996: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_57e50db656c9f8cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_f61f0a31974f9146" hs_bindgen_f61f0a31974f9146 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:998: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_f61f0a31974f9146 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_1ef0d2f18959d054" hs_bindgen_1ef0d2f18959d054 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:999: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_1ef0d2f18959d054 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_3b2e059a1b76ed78" hs_bindgen_3b2e059a1b76ed78 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1001: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_3b2e059a1b76ed78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_b50e2bd459a647d5" hs_bindgen_b50e2bd459a647d5 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1003: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_b50e2bd459a647d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_f9939c35a1f355a2" hs_bindgen_f9939c35a1f355a2 :: + 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:1006: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_f9939c35a1f355a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_d2f0747ccaa7ac97" hs_bindgen_d2f0747ccaa7ac97 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1008: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_d2f0747ccaa7ac97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_1f7287c1d4e30bfa" hs_bindgen_1f7287c1d4e30bfa :: + 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:1015: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_1f7287c1d4e30bfa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_c95b79d40c40c628" hs_bindgen_c95b79d40c40c628 :: + 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:1022: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_c95b79d40c40c628 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_3e8e48c428d4c0dd" hs_bindgen_3e8e48c428d4c0dd :: + 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:1027: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_3e8e48c428d4c0dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_aa09e107e1a2356a" hs_bindgen_aa09e107e1a2356a :: + 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:1032: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_aa09e107e1a2356a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_2fabc723b9c490c0" hs_bindgen_2fabc723b9c490c0 :: + 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:1050: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_2fabc723b9c490c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_7b9ca654b42bf337" hs_bindgen_7b9ca654b42bf337 :: + 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:1061: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_7b9ca654b42bf337 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_552355f6fdb0fda3" hs_bindgen_552355f6fdb0fda3 :: + 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:1077: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_552355f6fdb0fda3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_b77d2e17c68553eb" hs_bindgen_b77d2e17c68553eb :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1081: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_b77d2e17c68553eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_2d83cee3e51854ba" hs_bindgen_2d83cee3e51854ba :: + 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:1084: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_2d83cee3e51854ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_153be7b34aa68dd9" hs_bindgen_153be7b34aa68dd9 :: + 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:1086: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_153be7b34aa68dd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_4fac372bfa85be2b" hs_bindgen_4fac372bfa85be2b :: + 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:1088: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_4fac372bfa85be2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_d58b816764f12dd5" hs_bindgen_d58b816764f12dd5 :: + 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:1090: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_d58b816764f12dd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_9465f44efbaa77f7" hs_bindgen_9465f44efbaa77f7 :: + 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:1092: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_9465f44efbaa77f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_dc5e34d6c6dffec6" hs_bindgen_dc5e34d6c6dffec6 :: + 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:1112: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_dc5e34d6c6dffec6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_1011ce95ae1d9112" hs_bindgen_1011ce95ae1d9112 :: + 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:1134: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_1011ce95ae1d9112 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_2d7692f9818bd854" hs_bindgen_2d7692f9818bd854 :: + 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_2d7692f9818bd854 + +{-| 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:1142: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_2d7692f9818bd854 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_35e2e7aa5a96d66c" hs_bindgen_35e2e7aa5a96d66c :: + 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:1147:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_35e2e7aa5a96d66c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_5603a920be6c624b" hs_bindgen_5603a920be6c624b :: + 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:1159: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_5603a920be6c624b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_1b05903f4377a635" hs_bindgen_1b05903f4377a635 :: + 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:1164: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_1b05903f4377a635 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_8efd85df41650f78" hs_bindgen_8efd85df41650f78 :: + 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:1169: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_8efd85df41650f78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_39d1214ae23ee893" hs_bindgen_39d1214ae23ee893 :: + 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:1171: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_39d1214ae23ee893 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_2f637e50227c0691" hs_bindgen_2f637e50227c0691 :: + 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:1178: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_2f637e50227c0691 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_e5e37c0eaf9352c1" hs_bindgen_e5e37c0eaf9352c1 :: + 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:1193: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_e5e37c0eaf9352c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_090b50aad1b34d9f" hs_bindgen_090b50aad1b34d9f :: + 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:1208: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_090b50aad1b34d9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_f3f08978c7c0d7bd" hs_bindgen_f3f08978c7c0d7bd :: + 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:1225: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_f3f08978c7c0d7bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_1c8d6740bf69f194" hs_bindgen_1c8d6740bf69f194 :: + 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:1240: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_1c8d6740bf69f194 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_00a97b89cee67fd2" hs_bindgen_00a97b89cee67fd2 :: + 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:1256: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_00a97b89cee67fd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_782a3bd70940e514" hs_bindgen_782a3bd70940e514 :: + 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:1271: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_782a3bd70940e514 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_833bf54f5818e4e5" hs_bindgen_833bf54f5818e4e5 :: + 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_833bf54f5818e4e5 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1282: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_833bf54f5818e4e5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_e3b2f498b6464b77" hs_bindgen_e3b2f498b6464b77 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1284: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_e3b2f498b6464b77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_79d67ff0840d4b23" hs_bindgen_79d67ff0840d4b23 :: + 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:1286: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_79d67ff0840d4b23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_fdaf927e8ee7bdee" hs_bindgen_fdaf927e8ee7bdee :: + 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:1291: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_fdaf927e8ee7bdee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_9049f13d96d473d8" hs_bindgen_9049f13d96d473d8 :: + 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:1296: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_9049f13d96d473d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_3895fd03eae90c9e" hs_bindgen_3895fd03eae90c9e :: + 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:1298: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_3895fd03eae90c9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_d5b93b2a912ebd17" hs_bindgen_d5b93b2a912ebd17 :: + 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:1303: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_d5b93b2a912ebd17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_25b13fd4f1bf67dd" hs_bindgen_25b13fd4f1bf67dd :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1305: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_25b13fd4f1bf67dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_cd3ee62f5dffacc6" hs_bindgen_cd3ee62f5dffacc6 :: + 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:1308: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_cd3ee62f5dffacc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_56aa838d4d649418" hs_bindgen_56aa838d4d649418 :: + 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:1313:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_56aa838d4d649418 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_c7524243a6dcf8fa" hs_bindgen_c7524243a6dcf8fa :: + 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:1318: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_c7524243a6dcf8fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_e351f071fad35538" hs_bindgen_e351f071fad35538 :: + 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:1320: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_e351f071fad35538 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_a48e4572f08a2c8b" hs_bindgen_a48e4572f08a2c8b :: + 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:1325: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_a48e4572f08a2c8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_db59b2ad2eea111d" hs_bindgen_db59b2ad2eea111d :: + 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_db59b2ad2eea111d + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1327: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_db59b2ad2eea111d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_7ab3675b22ac6013" hs_bindgen_7ab3675b22ac6013 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1330: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_7ab3675b22ac6013 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_f1f59f28223df35d" hs_bindgen_f1f59f28223df35d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1332: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_f1f59f28223df35d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_1d0641c153d7f6da" hs_bindgen_1d0641c153d7f6da :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1334: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_1d0641c153d7f6da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_54dba0caec0e4826" hs_bindgen_54dba0caec0e4826 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1336: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_54dba0caec0e4826 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_94b9b35ccd360279" hs_bindgen_94b9b35ccd360279 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1338: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_94b9b35ccd360279 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_0952e259fff3a00c" hs_bindgen_0952e259fff3a00c :: + 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:1341: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_0952e259fff3a00c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_47b5e0cfedf25eb8" hs_bindgen_47b5e0cfedf25eb8 :: + 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:1343: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_47b5e0cfedf25eb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_17ab4b2b502c954a" hs_bindgen_17ab4b2b502c954a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1346: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_17ab4b2b502c954a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_2e87e0fa318fdf3b" hs_bindgen_2e87e0fa318fdf3b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1348: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_2e87e0fa318fdf3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_b4a8194b90d96a70" hs_bindgen_b4a8194b90d96a70 :: + 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:1354: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_b4a8194b90d96a70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_a58532db0188a0cf" hs_bindgen_a58532db0188a0cf :: + 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:1357: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_a58532db0188a0cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_e8d05e566cdb0042" hs_bindgen_e8d05e566cdb0042 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1360: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_e8d05e566cdb0042 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_73be26ab4ad4ece9" hs_bindgen_73be26ab4ad4ece9 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1363: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_73be26ab4ad4ece9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_fa1ce55da4d2efd5" hs_bindgen_fa1ce55da4d2efd5 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1365: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_fa1ce55da4d2efd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_7ee0b3d83aee55b0" hs_bindgen_7ee0b3d83aee55b0 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1367: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_7ee0b3d83aee55b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_3310c1fbb0977528" hs_bindgen_3310c1fbb0977528 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1369: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_3310c1fbb0977528 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_c8b762a4014e34b9" hs_bindgen_c8b762a4014e34b9 :: + 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:1384: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_c8b762a4014e34b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_7f071c0db57e7eed" hs_bindgen_7f071c0db57e7eed :: + 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:1398: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_7f071c0db57e7eed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_1e50890854ec176d" hs_bindgen_1e50890854ec176d :: + 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:1416: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_1e50890854ec176d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_4551b604dc51f2a1" hs_bindgen_4551b604dc51f2a1 :: + 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:1431: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_4551b604dc51f2a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_26b254ca94ec80e9" hs_bindgen_26b254ca94ec80e9 :: + 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_26b254ca94ec80e9 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1437: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_26b254ca94ec80e9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_b58b16cf8d91b465" hs_bindgen_b58b16cf8d91b465 :: + 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_b58b16cf8d91b465 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1439: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_b58b16cf8d91b465 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_d36489b17ec7099e" hs_bindgen_d36489b17ec7099e :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1441: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_d36489b17ec7099e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_50101ec289a5a6d5" hs_bindgen_50101ec289a5a6d5 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1443: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_50101ec289a5a6d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_e28ff585362f0d29" hs_bindgen_e28ff585362f0d29 :: + 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_e28ff585362f0d29 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1449: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_e28ff585362f0d29 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_15f07e93c775ad18" hs_bindgen_15f07e93c775ad18 :: + 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_15f07e93c775ad18 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1451: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_15f07e93c775ad18 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_c37f0d0d5b0bed27" hs_bindgen_c37f0d0d5b0bed27 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1453: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_c37f0d0d5b0bed27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_758b730dc08c59d6" hs_bindgen_758b730dc08c59d6 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1455: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_758b730dc08c59d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_5932b1d96ba68b58" hs_bindgen_5932b1d96ba68b58 :: + 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_5932b1d96ba68b58 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1461: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_5932b1d96ba68b58 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_76a42d8e149d1223" hs_bindgen_76a42d8e149d1223 :: + 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_76a42d8e149d1223 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1463: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_76a42d8e149d1223 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_27b600f16d6065bf" hs_bindgen_27b600f16d6065bf :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1465: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_27b600f16d6065bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_bd19c60961558127" hs_bindgen_bd19c60961558127 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1467: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_bd19c60961558127 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_ac07e19dea838342" hs_bindgen_ac07e19dea838342 :: + 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_ac07e19dea838342 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1473: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_ac07e19dea838342 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_9ffdba2d05cdd3c6" hs_bindgen_9ffdba2d05cdd3c6 :: + 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_9ffdba2d05cdd3c6 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1475: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_9ffdba2d05cdd3c6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_80306915ad55ca78" hs_bindgen_80306915ad55ca78 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1477: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_80306915ad55ca78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_6deda284e2264ac0" hs_bindgen_6deda284e2264ac0 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1479: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_6deda284e2264ac0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_0ae274dd0566de18" hs_bindgen_0ae274dd0566de18 :: + 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_0ae274dd0566de18 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1485: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_0ae274dd0566de18 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_1ea7dd76a53b72ce" hs_bindgen_1ea7dd76a53b72ce :: + 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_1ea7dd76a53b72ce + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1487: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_1ea7dd76a53b72ce x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_b0e0051153aa4f25" hs_bindgen_b0e0051153aa4f25 :: + 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:1490: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_b0e0051153aa4f25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_d595e5c035da62dc" hs_bindgen_d595e5c035da62dc :: + 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:1493: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_d595e5c035da62dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_77dcb7b74bbc859d" hs_bindgen_77dcb7b74bbc859d :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1499: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_77dcb7b74bbc859d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_52c270e8c6b63e26" hs_bindgen_52c270e8c6b63e26 :: + 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:1502: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_52c270e8c6b63e26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_26af3325e17a0196" hs_bindgen_26af3325e17a0196 :: + 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:1505: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_26af3325e17a0196 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_cd08bfd9a01be58e" hs_bindgen_cd08bfd9a01be58e :: + 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:1508: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_cd08bfd9a01be58e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_f4ffcf75e54bec18" hs_bindgen_f4ffcf75e54bec18 :: + 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:1511: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_f4ffcf75e54bec18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_7aa0dcfb766d475a" hs_bindgen_7aa0dcfb766d475a :: + 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:1514: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_7aa0dcfb766d475a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_4c0b4fcd89e2d9a5" hs_bindgen_4c0b4fcd89e2d9a5 :: + 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:1517: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_4c0b4fcd89e2d9a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_97d7f7f0b785b8d1" hs_bindgen_97d7f7f0b785b8d1 :: + 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:1521: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_97d7f7f0b785b8d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_564366b06f05c75c" hs_bindgen_564366b06f05c75c :: + 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:1525: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_564366b06f05c75c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_04847ed297c98153" hs_bindgen_04847ed297c98153 :: + 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:1528: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_04847ed297c98153 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_299fb8da41c3c304" hs_bindgen_299fb8da41c3c304 :: + 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:1535: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_299fb8da41c3c304 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_fbaba0abd5380221" hs_bindgen_fbaba0abd5380221 :: + 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:1543: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_fbaba0abd5380221 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_47661a8e772a2452" hs_bindgen_47661a8e772a2452 :: + 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:1548: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_47661a8e772a2452 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_4e0fa4d9ea5a6c13" hs_bindgen_4e0fa4d9ea5a6c13 :: + 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:1551: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_4e0fa4d9ea5a6c13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_4d070268e36780f1" hs_bindgen_4d070268e36780f1 :: + 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_4d070268e36780f1 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1554: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_4d070268e36780f1 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_03481ba2485d6155" hs_bindgen_03481ba2485d6155 :: + 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:1567: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_03481ba2485d6155 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_c30f8dbda34c9de8" hs_bindgen_c30f8dbda34c9de8 :: + 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:1572: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_c30f8dbda34c9de8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_37f322431b0919c7" hs_bindgen_37f322431b0919c7 :: + 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:1575: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_37f322431b0919c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_ea4b20156c4cbd3d" hs_bindgen_ea4b20156c4cbd3d :: + 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_ea4b20156c4cbd3d + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1578: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_ea4b20156c4cbd3d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_9b80cd8a88bfd74b" hs_bindgen_9b80cd8a88bfd74b :: + 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:1590: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_9b80cd8a88bfd74b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_1d94a2b062dd9556" hs_bindgen_1d94a2b062dd9556 :: + 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:1595: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_1d94a2b062dd9556 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_4328b0d72424c119" hs_bindgen_4328b0d72424c119 :: + 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:1597: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_4328b0d72424c119 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_d0b336253d8415c0" hs_bindgen_d0b336253d8415c0 :: + 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_d0b336253d8415c0 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1599: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_d0b336253d8415c0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_3d6da7c8edd93d2e" hs_bindgen_3d6da7c8edd93d2e :: + 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:1602: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_3d6da7c8edd93d2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_a01917dbef81541e" hs_bindgen_a01917dbef81541e :: + 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:1610: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_a01917dbef81541e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_4fca2bf72dfb94fa" hs_bindgen_4fca2bf72dfb94fa :: + 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:1618: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_4fca2bf72dfb94fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_ada0d1c0fd1154cd" hs_bindgen_ada0d1c0fd1154cd :: + 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_ada0d1c0fd1154cd + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1620: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_ada0d1c0fd1154cd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_e0af2714d85552d3" hs_bindgen_e0af2714d85552d3 :: + 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_e0af2714d85552d3 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1621: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_e0af2714d85552d3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_6a7dfe1dc85fc33b" hs_bindgen_6a7dfe1dc85fc33b :: + 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:1629: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_6a7dfe1dc85fc33b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_e27b8da06a2ca062" hs_bindgen_e27b8da06a2ca062 :: + 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:1634: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_e27b8da06a2ca062 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_e4d5ba09478503aa" hs_bindgen_e4d5ba09478503aa :: + 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:1636: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_e4d5ba09478503aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_0f333b8d67f66563" hs_bindgen_0f333b8d67f66563 :: + 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:1639: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_0f333b8d67f66563 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_6cdc1159e87df67a" hs_bindgen_6cdc1159e87df67a :: + 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:1641: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_6cdc1159e87df67a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_f8d1faf0a230c988" hs_bindgen_f8d1faf0a230c988 :: + 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_f8d1faf0a230c988 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1644: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_f8d1faf0a230c988 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_4d81b6f9991a63a1" hs_bindgen_4d81b6f9991a63a1 :: + 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:1658: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_4d81b6f9991a63a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_9189e9c6a7efa8ed" hs_bindgen_9189e9c6a7efa8ed :: + 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:1663: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_9189e9c6a7efa8ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_6af0de6f34942045" hs_bindgen_6af0de6f34942045 :: + 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:1666: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_6af0de6f34942045 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_ff43fd162f17566b" hs_bindgen_ff43fd162f17566b :: + 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:1671: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_ff43fd162f17566b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_aefba414cefb9f8b" hs_bindgen_aefba414cefb9f8b :: + 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_aefba414cefb9f8b + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1675: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_aefba414cefb9f8b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_d7606665a994244c" hs_bindgen_d7606665a994244c :: + 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:1688: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_d7606665a994244c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_95556347ea2797f6" hs_bindgen_95556347ea2797f6 :: + 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:1693: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_95556347ea2797f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_2aa3d3c3494197c0" hs_bindgen_2aa3d3c3494197c0 :: + 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:1696: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_2aa3d3c3494197c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_3ca91f0c80576de1" hs_bindgen_3ca91f0c80576de1 :: + 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_3ca91f0c80576de1 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1701: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_3ca91f0c80576de1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_8d2886914f22d425" hs_bindgen_8d2886914f22d425 :: + 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:1714: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_8d2886914f22d425 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_93524a7861ff6e6b" hs_bindgen_93524a7861ff6e6b :: + 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_93524a7861ff6e6b + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1721: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_93524a7861ff6e6b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_846dd7d03a5d8e3f" hs_bindgen_846dd7d03a5d8e3f :: + 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_846dd7d03a5d8e3f + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1736: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_846dd7d03a5d8e3f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_f0de3a6389772fbe" hs_bindgen_f0de3a6389772fbe :: + 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_f0de3a6389772fbe + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1751: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_f0de3a6389772fbe x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_a384012731ae4618" hs_bindgen_a384012731ae4618 :: + 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:1752: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_a384012731ae4618 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_9ac8cb74170e0ad5" hs_bindgen_9ac8cb74170e0ad5 :: + 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:1757: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_9ac8cb74170e0ad5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_6f134dc73c35e577" hs_bindgen_6f134dc73c35e577 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1759: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_6f134dc73c35e577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_b7d206b1fcbf0c58" hs_bindgen_b7d206b1fcbf0c58 :: + 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:1762: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_b7d206b1fcbf0c58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_ef32f801a5125567" hs_bindgen_ef32f801a5125567 :: + 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:1763: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_ef32f801a5125567 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_fe9243493ba1daa6" hs_bindgen_fe9243493ba1daa6 :: + 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:1765: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_fe9243493ba1daa6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_facafaa28cf91181" hs_bindgen_facafaa28cf91181 :: + 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:1766: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_facafaa28cf91181 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_85dd951037df5143" hs_bindgen_85dd951037df5143 :: + 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:1769: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_85dd951037df5143 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_7041bbb54580a4c4" hs_bindgen_7041bbb54580a4c4 :: + 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:1771: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_7041bbb54580a4c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_91b93bbf856652b4" hs_bindgen_91b93bbf856652b4 :: + 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:1772: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_91b93bbf856652b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_c83bb7ebfc5444aa" hs_bindgen_c83bb7ebfc5444aa :: + 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:1773: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_c83bb7ebfc5444aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_9228befe7cf1f2da" hs_bindgen_9228befe7cf1f2da :: + 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:1775: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_9228befe7cf1f2da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_8ecf9705f46ac444" hs_bindgen_8ecf9705f46ac444 :: + 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:1778: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_8ecf9705f46ac444 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_d763c744fae944bf" hs_bindgen_d763c744fae944bf :: + 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:1780: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_d763c744fae944bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_dd9f335a63dd17a0" hs_bindgen_dd9f335a63dd17a0 :: + 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:1783: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_dd9f335a63dd17a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_5ac5132374ca9181" hs_bindgen_5ac5132374ca9181 :: + 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:1787: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_5ac5132374ca9181 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_3ff2957a6f239c64" hs_bindgen_3ff2957a6f239c64 :: + 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:1790: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_3ff2957a6f239c64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_36a6e1aa8e6b8cd4" hs_bindgen_36a6e1aa8e6b8cd4 :: + 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:1793: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_36a6e1aa8e6b8cd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_51dd4743f5d1e053" hs_bindgen_51dd4743f5d1e053 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1809: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_51dd4743f5d1e053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_ad654f826f3bc050" hs_bindgen_ad654f826f3bc050 :: + 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:1815: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_ad654f826f3bc050 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_893f76f7421b9d18" hs_bindgen_893f76f7421b9d18 :: + 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:1826: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_893f76f7421b9d18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_a837b0f47521da42" hs_bindgen_a837b0f47521da42 :: + 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:1841: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_a837b0f47521da42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_8a5b596f56c631b5" hs_bindgen_8a5b596f56c631b5 :: + 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:1849: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_8a5b596f56c631b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_481095fc59aee777" hs_bindgen_481095fc59aee777 :: + 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_481095fc59aee777 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1851: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_481095fc59aee777 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_7deb587a9ea0186f" hs_bindgen_7deb587a9ea0186f :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1853: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_7deb587a9ea0186f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_ea09e42ba9e7e089" hs_bindgen_ea09e42ba9e7e089 :: + 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:1859: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_ea09e42ba9e7e089 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_78f60cfa7500e1cb" hs_bindgen_78f60cfa7500e1cb :: + 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:1866: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_78f60cfa7500e1cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_4e51ac9531a87dea" hs_bindgen_4e51ac9531a87dea :: + 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_4e51ac9531a87dea + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1884: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_4e51ac9531a87dea (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_9dd335b51096e46f" hs_bindgen_9dd335b51096e46f :: + 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_9dd335b51096e46f + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1893: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_9dd335b51096e46f (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_8c2604fd5e7812f3" hs_bindgen_8c2604fd5e7812f3 :: + 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_8c2604fd5e7812f3 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1901: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_8c2604fd5e7812f3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_91865306e412607d" hs_bindgen_91865306e412607d :: + 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_91865306e412607d + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1911: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_91865306e412607d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_40a4a50f4c9d3772" hs_bindgen_40a4a50f4c9d3772 :: + 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_40a4a50f4c9d3772 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1930: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_40a4a50f4c9d3772 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_9685ca6731570e56" hs_bindgen_9685ca6731570e56 :: + 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:1937:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_9685ca6731570e56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_21c94c0ad2a40311" hs_bindgen_21c94c0ad2a40311 :: + 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:1943: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_21c94c0ad2a40311 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_975b378aa7634fcf" hs_bindgen_975b378aa7634fcf :: + 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:1949: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_975b378aa7634fcf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_e71f24fafb1f8b22" hs_bindgen_e71f24fafb1f8b22 :: + 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_e71f24fafb1f8b22 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1962: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_e71f24fafb1f8b22 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_db022f277a5c8f93" hs_bindgen_db022f277a5c8f93 :: + 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:1970:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_db022f277a5c8f93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_db44e934e68a9486" hs_bindgen_db44e934e68a9486 :: + 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:1979: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_db44e934e68a9486 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_c3a047dba2d47e4e" hs_bindgen_c3a047dba2d47e4e :: + 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:1990: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_c3a047dba2d47e4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_6509e65b31385e15" hs_bindgen_6509e65b31385e15 :: + 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_6509e65b31385e15 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2001: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_6509e65b31385e15 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_1ecfea8fe6b9b0b7" hs_bindgen_1ecfea8fe6b9b0b7 :: + 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:2008:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_1ecfea8fe6b9b0b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_ae56b8230f428729" hs_bindgen_ae56b8230f428729 :: + 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_ae56b8230f428729 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2011: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_ae56b8230f428729 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_f56d8dbb65696693" hs_bindgen_f56d8dbb65696693 :: + 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_f56d8dbb65696693 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2014: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_f56d8dbb65696693 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_79d10c0b3792fc01" hs_bindgen_79d10c0b3792fc01 :: + 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:2026: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_79d10c0b3792fc01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_3bade2710870e10e" hs_bindgen_3bade2710870e10e :: + 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:2034: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_3bade2710870e10e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_9335abda7f7e2163" hs_bindgen_9335abda7f7e2163 :: + 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_9335abda7f7e2163 + +{-| 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:2049: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_9335abda7f7e2163 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_f66557d5c9f6b269" hs_bindgen_f66557d5c9f6b269 :: + 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_f66557d5c9f6b269 + +{-| 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:2068: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_f66557d5c9f6b269 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_da99519a4fc6417c" hs_bindgen_da99519a4fc6417c :: + 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_da99519a4fc6417c + +{-| 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:2084: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_da99519a4fc6417c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_5ae2908131f8a9e7" hs_bindgen_5ae2908131f8a9e7 :: + 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_5ae2908131f8a9e7 + +{-| 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:2111: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_5ae2908131f8a9e7 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_4_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_adbed589e3e1ad2a" hs_bindgen_adbed589e3e1ad2a :: + 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:2129: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_adbed589e3e1ad2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_8fec80ca03d39b91" hs_bindgen_8fec80ca03d39b91 :: + 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:2150: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_8fec80ca03d39b91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_757aa212390314ca" hs_bindgen_757aa212390314ca :: + 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:2171: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_757aa212390314ca diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/Unsafe.hs new file mode 100644 index 00000000..466f2108 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_4_0/Unsafe.hs @@ -0,0 +1,12599 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_4_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_4_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_eb1c3f3530e0a3cb (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_a1f606620493e339 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_6f78c03e0884ed52 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_581b2bc0d484a69f (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_6ebba0fa7e292b6c (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_2d002fe935f60302 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_2088b95c0077cafd (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_0234651187da7434 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_a0e27cadf5201503 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_affa42ec489b00e4 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_09f0bf0c91faef87 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b7eaea6408d2f7c8 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_174d30828bf7d9c4 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0758efad3ab730f6 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6062a5d706e78bf3 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9cce8f006f2f34cb (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_aaa19b13c7e9782d (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0536d458b3398c26 (" + , " 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_290707a0a2414be3 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_17ae8575ba685343 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53140796d22c2abf (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebfdcaa054e48c2d (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_180b51e1cfc2ca7f (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1dd8abc335ba0c75 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a782eee6b1610cad (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_afa608a42b6acbd4 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ecaab6222871105 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_94702311fcab55fc (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_333a613644d23b6a (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ff79eb903b138ac (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e78ef9903ae9063 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_caa28cb1d4cc6c6e (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1b24bf02a042339d (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f0a508d77e86bf8 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d053574c7bdabb7 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_916c5b05d8c65794 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3be02f9dcc5c072 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d941d9b48fe3b82b (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_81822c8b9a0c0401 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a9222c96984bfc20 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_9836192cefe0ab5c (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c38bb0d83ea44fac (" + , " 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_625b71c6fb4e258d (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6ced874990be8c16 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8620efdf8bf3494d (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a33535bec648026c (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ae2d05b10f4eb94b (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e10424689d980069 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f3f666f0bb98902d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_dfac845832a221a7 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_f89dc4fc61cb8ece (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_02103566c3a7f58a (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_056730414dfb01ca (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6b578138d50ada43 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6a6eb2afd7dbbc01 (" + , " 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_567601bedb0f8f73 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_304b60ca048f73e3 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_1c9de6ed34b87e91 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_029df2706a878ee2 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ca8aa290af7cffc2 (" + , " 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_3d9834c8193cbd27 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_2aad44a8667262ac (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_07117494a75dad26 (" + , " 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_9aacbc09efc46fae (" + , " 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_8dddb6c58463fbb9 (" + , " 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_c72810d93eb2c7b4 (" + , " 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_558f9784ba6b8deb (" + , " 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_0fae4b946d901fa8 (" + , " 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_722e9a6f06b3e172 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff8293f14591eeb3 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_da091be0382494dc (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_a6ba6d973c54fd31 (" + , " 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_95320f28c9c00ce8 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_35dd90c8e470373b (" + , " 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_6a090395c1aa9cdf (" + , " 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_0defd458ab2fa6eb (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d5f2a70f28270c85 (" + , " 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_1ddd882a6a4ee5ba (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_80320a03c146b406 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9a6e3e7d820b8cf3 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d595bb20cd1f8c02 (" + , " 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_55e770906010c318 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_c3311478f06417db (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_96594cf819323c24 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eeb660adb8a1fa6e (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_adc60f2bdff633bb (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6cd6491c868b496d (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f99851226be6524 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2834b2d0a2b36a4d (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3a503a384820a9d (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e39f3802b11a1a3 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4e9310e531aaac9 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_c18725886a33edaa (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_e46fe20ac97197e7 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_cc2d31f3454b6a5b (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_cc9e2a156164f59c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_0079f4b967911380 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_0cf4208cadc80176 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6bffc234f6d23f18 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d10aef919ac3af79 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e145b68fda2c7df2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_901ef5bf06138ce1 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53941a625be5f747 (" + , " 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_2124baf800870ad6 (" + , " 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_e81ef0fb57befeef (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ed57a07548667b33 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1bb6333dc686a27d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3979808d18ef751a (" + , " 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_b0fc72ccbb6927ec (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4080672408305a0d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f124d36682a9aead (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b9a929285446daff (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a49f6705024a0dba (" + , " 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_e4cf61513cd2a110 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9313a3a6c054d9b0 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47febc714a0dcd9c (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5eb1530231b26e23 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2a37f1f903ef1964 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2a070bf9355e608d (" + , " 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_d350d0bd8839c54a (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7241197213e347cf (" + , " 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_f8a4a296dceb36d7 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e2eac53d2fe11ea2 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd41db04623945fe (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6dd438f78a5d187d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c99bf85fa8689a8f (" + , " 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_34468fdb69549578 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d65f60b107d75389 (" + , " 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_12ad7c48f92da764 (" + , " 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_201405a50db8d83a (" + , " 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_b6e578a29283a765 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fbef2f2d3432f6c8 (" + , " 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_914d68f0c4f8a3d6 (" + , " 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_11bd6b9ce3734a22 (" + , " 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_c8c1c313d2740aae (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_39c0ac13fe3a5d25 (" + , " 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_a8a2c998b4851b58 (" + , " 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_da4055ea758be136 (" + , " 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_e306a5449da0e5f9 (" + , " 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_f3eaf4fbfca067a5 (" + , " 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_24d4cd5f082b0601 (" + , " 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_30286a02158340b8 (" + , " 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_fefbb2251b9fb6e6 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a905893e48696315 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98d9819c8b2719d2 (" + , " 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_ef5d3b364cdd501c (" + , " 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_b65c5600bc3af78d (" + , " 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_6feb1b53ce1681a2 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f9a854ea05ccf7f3 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8840299ffee50929 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8d6ae16f0877bc17 (" + , " 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_74337ee913552832 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b480d06a4d90b070 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd8235861e1b5b04 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_341d1bde5ad47402 (" + , " 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_b0afb7b91c81e8dc (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1b53d6532708a989 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_904797ba4a93e9a2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e30dacc7f839295 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_12aec0be2cb1e141 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f7562380b28e8fd7 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_528807f69b7b8164 (" + , " 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_ccaf6fe8223b4a10 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f42b813893d2a31a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_669392a9a37ee466 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_62d6e5ffaeaaa745 (" + , " 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_37b8e2567d50f4c5 (" + , " 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_f0dcd1ce29f94b38 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dfecbeae6a11db32 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_35a012da336f06cf (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa84d1a5ab013de8 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3b492ecf1a2c2b08 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3d7f7a6b19d4578a (" + , " 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_f3d408528d03f9fd (" + , " 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_1814db2ddcd0b54f (" + , " 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_afe48a2cf6081014 (" + , " 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_7d70fa5b9f8bed05 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eade2965586ff178 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1240fbf42dfa5cee (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b49ba171512fa202 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55a7d64f19ee600c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_96fbd4ba9ff3db7b (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fa87b9e0256a9aff (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e3a65b5580e99095 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7d8ea634e47c3d78 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_64a6899b9f5fada7 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de9512f5aae37fb4 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_671249edee67da6b (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79df60e5716fe805 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b530ef271fc54115 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_93f5aa8a2e2fbb44 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f87d954378709422 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbb95f8dba64fb20 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b57f5aa8762dc0a6 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cee6c821cc3aebe3 (" + , " 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_430fb34e96edd44b (" + , " 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_70d26eff347f9afc (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_ade5854cbff8fcdf (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5201f609fff7fd94 (" + , " 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_2ada54741be43677 (" + , " 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_aab2491ae3444e68 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ed7a78601a0bfe8 (" + , " 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_ee0486ccf75ffbf6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b962aea007ed2ccb (" + , " 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_b6e1cb5602711e55 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c6bbabdc55f98bbb (" + , " 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_f07afc6e6a2393ab (" + , " 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_f4c93c72489949e9 (" + , " 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_800f55ccfbc16cb9 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_487566a68f8d295e (" + , " 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_b98d72ece8c1e510 (" + , " 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_e40a094e07a03030 (" + , " 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_6b8d2f8ce1b998cb (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b2e4b4632810057c (" + , " 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_118b5279677e7506 (" + , " 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_7770352be7ee84b6 (" + , " 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_1b3c2e96380f4183 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c4cc1220054255ad (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b61b5345f3eadca8 (" + , " 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_92f1d8109b280b9d (" + , " 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_a8a0958cd8475c1d (" + , " 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_c093fb2cd423a762 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3b3da077767e295e (" + , " 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_b6075fe0e12aff38 (" + , " 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_2b3fb47b7845f1a6 (" + , " 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_3c022cf0d405e40a (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_58fec898b2fb3489 (" + , " 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_a5710bdcc41c8aba (" + , " 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_55c724c6c71db092 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_910d94da183aad8d (" + , " 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_188cb0f03db8f23f (" + , " 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_d9ee767b405dbb0d (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7ee5f65f9d463638 (" + , " 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_294a01fcefde8556 (" + , " 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_5adb4df159b7b932 (" + , " 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_e2449bb65c6dd3bd (" + , " 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_6aab4dab2414ac2d (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_81958de9b485fef2 (" + , " 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_da5d2d9e79143d4e (" + , " 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_73cc5476eb3a8eb7 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ac1a17d66aba0536 (" + , " 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_e6dbb22e8ab2212f (" + , " 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_35197da8640ddd95 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_865fb449d5c477ce (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_70dd7c7635f84013 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_21b369e5bc0e60b4 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_31e2240822b606d6 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_79c36b1c95be2018 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d6007351b2dc802c (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_df9da2d76ecc3fb1 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c064c5c6d515c6e2 (" + , " 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_cac57fe06cd460d9 (" + , " 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_905156b63b52b123 (" + , " 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_42e55de5d5ae375c (" + , " 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_247ec6e1869751b5 (" + , " 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_32af7e64617562c5 (" + , " 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_cdfeebbab9326c7d (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_95e426b2690e8dd8 (" + , " 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_9b7614db82e4a559 (" + , " 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_58ad89930226874a (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cd4eeb7b4b308159 (" + , " 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_72732234d0de12aa (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1c17d37fe5a372f (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b223771e47c64ef9 (" + , " 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_f3de60b8a8059d97 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_986df1a15dfdbbf0 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b13c9abb3c6a383d (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5bbd75da734d013c (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9e6eb1262f30bdbc (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_687801a25ec9f750 (" + , " 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_8f3ec176e2ca65e2 (" + , " 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_df7be2794b7a90cc (" + , " 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_9659fc4fc22a0664 (" + , " 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_05aec5a9e67ea052 (" + , " 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_b781a609f762ad44 (" + , " 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_ed97665be8e3d476 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_048d3258ab6468df (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dc06398fb8735bbe (" + , " 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_b8965c1968d3c482 (" + , " 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_2d7f0f059e31f4b0 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e043d168b0aef0bb (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c360dd7fbf0271fa (" + , " 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_0215815c28c54121 (" + , " 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_70e766e0b161fe8b (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8870bfef1f982fcc (" + , " 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_a7c2126a8e4aabb8 (" + , " 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_071dad9eb0eb2c69 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_7828c7d8598295bb (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6e66050ecc3c1426 (" + , " 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_b079f3f58d4a4fec (" + , " 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_c9d4ff709a5dedc6 (" + , " 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_43afa838d759d3c5 (" + , " 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_3856c3c90f61e8d5 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2a20c692aee144f7 (" + , " 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_9cc810182eaabdde (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_eb1c3f3530e0a3cb" hs_bindgen_eb1c3f3530e0a3cb :: + 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:158: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_eb1c3f3530e0a3cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_a1f606620493e339" hs_bindgen_a1f606620493e339 :: + 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:167: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_a1f606620493e339 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_6f78c03e0884ed52" hs_bindgen_6f78c03e0884ed52 :: + 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:174:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_6f78c03e0884ed52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_581b2bc0d484a69f" hs_bindgen_581b2bc0d484a69f :: + 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:180: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_581b2bc0d484a69f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_6ebba0fa7e292b6c" hs_bindgen_6ebba0fa7e292b6c :: + 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:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_6ebba0fa7e292b6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_2d002fe935f60302" hs_bindgen_2d002fe935f60302 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_2d002fe935f60302 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_2088b95c0077cafd" hs_bindgen_2088b95c0077cafd :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:195:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_2088b95c0077cafd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_0234651187da7434" hs_bindgen_0234651187da7434 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:200:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_0234651187da7434 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_a0e27cadf5201503" hs_bindgen_a0e27cadf5201503 :: + 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:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_a0e27cadf5201503 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_affa42ec489b00e4" hs_bindgen_affa42ec489b00e4 :: + 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:211: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_affa42ec489b00e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_09f0bf0c91faef87" hs_bindgen_09f0bf0c91faef87 :: + 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:217: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_09f0bf0c91faef87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_b7eaea6408d2f7c8" hs_bindgen_b7eaea6408d2f7c8 :: + 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:223: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_b7eaea6408d2f7c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_174d30828bf7d9c4" hs_bindgen_174d30828bf7d9c4 :: + 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:235: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_174d30828bf7d9c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_0758efad3ab730f6" hs_bindgen_0758efad3ab730f6 :: + 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:245: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_0758efad3ab730f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_6062a5d706e78bf3" hs_bindgen_6062a5d706e78bf3 :: + 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:250:28@ + +__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_6062a5d706e78bf3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_9cce8f006f2f34cb" hs_bindgen_9cce8f006f2f34cb :: + 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:255: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_9cce8f006f2f34cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_aaa19b13c7e9782d" hs_bindgen_aaa19b13c7e9782d :: + 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:272: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 "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_aaa19b13c7e9782d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_0536d458b3398c26" hs_bindgen_0536d458b3398c26 :: + 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:284: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_0536d458b3398c26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_290707a0a2414be3" hs_bindgen_290707a0a2414be3 :: + 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:298: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_290707a0a2414be3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_17ae8575ba685343" hs_bindgen_17ae8575ba685343 :: + 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:306: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_17ae8575ba685343 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_53140796d22c2abf" hs_bindgen_53140796d22c2abf :: + 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:316: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_53140796d22c2abf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_ebfdcaa054e48c2d" hs_bindgen_ebfdcaa054e48c2d :: + 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:326: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_ebfdcaa054e48c2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_180b51e1cfc2ca7f" hs_bindgen_180b51e1cfc2ca7f :: + 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:336: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_180b51e1cfc2ca7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_1dd8abc335ba0c75" hs_bindgen_1dd8abc335ba0c75 :: + 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:343: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_1dd8abc335ba0c75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_a782eee6b1610cad" hs_bindgen_a782eee6b1610cad :: + 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:357: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_a782eee6b1610cad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_afa608a42b6acbd4" hs_bindgen_afa608a42b6acbd4 :: + 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:365: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_afa608a42b6acbd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_9ecaab6222871105" hs_bindgen_9ecaab6222871105 :: + 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:373: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_9ecaab6222871105 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_94702311fcab55fc" hs_bindgen_94702311fcab55fc :: + 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:381: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_94702311fcab55fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_333a613644d23b6a" hs_bindgen_333a613644d23b6a :: + 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:390: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_333a613644d23b6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_0ff79eb903b138ac" hs_bindgen_0ff79eb903b138ac :: + 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:400: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_0ff79eb903b138ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_4e78ef9903ae9063" hs_bindgen_4e78ef9903ae9063 :: + 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:408: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_4e78ef9903ae9063 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_caa28cb1d4cc6c6e" hs_bindgen_caa28cb1d4cc6c6e :: + 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:415: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_caa28cb1d4cc6c6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_1b24bf02a042339d" hs_bindgen_1b24bf02a042339d :: + 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:423: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_1b24bf02a042339d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_5f0a508d77e86bf8" hs_bindgen_5f0a508d77e86bf8 :: + 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:438: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_5f0a508d77e86bf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_6d053574c7bdabb7" hs_bindgen_6d053574c7bdabb7 :: + 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:446: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_6d053574c7bdabb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_916c5b05d8c65794" hs_bindgen_916c5b05d8c65794 :: + 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:455: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_916c5b05d8c65794 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_d3be02f9dcc5c072" hs_bindgen_d3be02f9dcc5c072 :: + 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:464: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_d3be02f9dcc5c072 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_d941d9b48fe3b82b" hs_bindgen_d941d9b48fe3b82b :: + 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:473: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_d941d9b48fe3b82b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_81822c8b9a0c0401" hs_bindgen_81822c8b9a0c0401 :: + 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:483: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_81822c8b9a0c0401 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_a9222c96984bfc20" hs_bindgen_a9222c96984bfc20 :: + 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:491: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_a9222c96984bfc20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_9836192cefe0ab5c" hs_bindgen_9836192cefe0ab5c :: + 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:499: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_9836192cefe0ab5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_c38bb0d83ea44fac" hs_bindgen_c38bb0d83ea44fac :: + 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:509: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_c38bb0d83ea44fac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_625b71c6fb4e258d" hs_bindgen_625b71c6fb4e258d :: + 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:519: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_625b71c6fb4e258d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_6ced874990be8c16" hs_bindgen_6ced874990be8c16 :: + 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:533: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_6ced874990be8c16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_8620efdf8bf3494d" hs_bindgen_8620efdf8bf3494d :: + 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:538: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_8620efdf8bf3494d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_a33535bec648026c" hs_bindgen_a33535bec648026c :: + 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:543: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_a33535bec648026c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_ae2d05b10f4eb94b" hs_bindgen_ae2d05b10f4eb94b :: + 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:548: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_ae2d05b10f4eb94b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_e10424689d980069" hs_bindgen_e10424689d980069 :: + 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:553: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_e10424689d980069 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_f3f666f0bb98902d" hs_bindgen_f3f666f0bb98902d :: + 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:558: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_f3f666f0bb98902d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_dfac845832a221a7" hs_bindgen_dfac845832a221a7 :: + 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:565: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_dfac845832a221a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_f89dc4fc61cb8ece" hs_bindgen_f89dc4fc61cb8ece :: + 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:570: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_f89dc4fc61cb8ece + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_02103566c3a7f58a" hs_bindgen_02103566c3a7f58a :: + 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:576: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_02103566c3a7f58a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_056730414dfb01ca" hs_bindgen_056730414dfb01ca :: + 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:582: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_056730414dfb01ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_6b578138d50ada43" hs_bindgen_6b578138d50ada43 :: + 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:588:5@ + +__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_6b578138d50ada43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_6a6eb2afd7dbbc01" hs_bindgen_6a6eb2afd7dbbc01 :: + 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:594:5@ + +__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_6a6eb2afd7dbbc01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_567601bedb0f8f73" hs_bindgen_567601bedb0f8f73 :: + 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:599: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_567601bedb0f8f73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_304b60ca048f73e3" hs_bindgen_304b60ca048f73e3 :: + 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:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_304b60ca048f73e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_1c9de6ed34b87e91" hs_bindgen_1c9de6ed34b87e91 :: + 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:614: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_1c9de6ed34b87e91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_029df2706a878ee2" hs_bindgen_029df2706a878ee2 :: + 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:619: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_029df2706a878ee2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_ca8aa290af7cffc2" hs_bindgen_ca8aa290af7cffc2 :: + 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_ca8aa290af7cffc2 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:627: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_ca8aa290af7cffc2 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_3d9834c8193cbd27" hs_bindgen_3d9834c8193cbd27 :: + 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:639:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_3d9834c8193cbd27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_2aad44a8667262ac" hs_bindgen_2aad44a8667262ac :: + 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:645:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_2aad44a8667262ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_07117494a75dad26" hs_bindgen_07117494a75dad26 :: + 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_07117494a75dad26 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:664: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_07117494a75dad26 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_9aacbc09efc46fae" hs_bindgen_9aacbc09efc46fae :: + 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_9aacbc09efc46fae + +{-| 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:697: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_9aacbc09efc46fae x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_8dddb6c58463fbb9" hs_bindgen_8dddb6c58463fbb9 :: + 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_8dddb6c58463fbb9 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:721: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_8dddb6c58463fbb9 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_c72810d93eb2c7b4" hs_bindgen_c72810d93eb2c7b4 :: + 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_c72810d93eb2c7b4 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:748: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_c72810d93eb2c7b4 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_558f9784ba6b8deb" hs_bindgen_558f9784ba6b8deb :: + 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_558f9784ba6b8deb + +{-| 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:767: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_558f9784ba6b8deb x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_0fae4b946d901fa8" hs_bindgen_0fae4b946d901fa8 :: + 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_0fae4b946d901fa8 + +{-| 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:790: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_0fae4b946d901fa8 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_4_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_722e9a6f06b3e172" hs_bindgen_722e9a6f06b3e172 :: + 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:808: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_722e9a6f06b3e172 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_ff8293f14591eeb3" hs_bindgen_ff8293f14591eeb3 :: + 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:814: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_ff8293f14591eeb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_da091be0382494dc" hs_bindgen_da091be0382494dc :: + 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:820: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_da091be0382494dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_a6ba6d973c54fd31" hs_bindgen_a6ba6d973c54fd31 :: + 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_a6ba6d973c54fd31 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:825: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_a6ba6d973c54fd31 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_95320f28c9c00ce8" hs_bindgen_95320f28c9c00ce8 :: + 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:831: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_95320f28c9c00ce8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_35dd90c8e470373b" hs_bindgen_35dd90c8e470373b :: + 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_35dd90c8e470373b + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:837: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_35dd90c8e470373b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_6a090395c1aa9cdf" hs_bindgen_6a090395c1aa9cdf :: + 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_6a090395c1aa9cdf + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:843: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_6a090395c1aa9cdf x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_0defd458ab2fa6eb" hs_bindgen_0defd458ab2fa6eb :: + 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:851: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_0defd458ab2fa6eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_d5f2a70f28270c85" hs_bindgen_d5f2a70f28270c85 :: + 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:861: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_d5f2a70f28270c85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_1ddd882a6a4ee5ba" hs_bindgen_1ddd882a6a4ee5ba :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:874: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_1ddd882a6a4ee5ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_80320a03c146b406" hs_bindgen_80320a03c146b406 :: + 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:880:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_80320a03c146b406 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_9a6e3e7d820b8cf3" hs_bindgen_9a6e3e7d820b8cf3 :: + 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:885: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_9a6e3e7d820b8cf3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_d595bb20cd1f8c02" hs_bindgen_d595bb20cd1f8c02 :: + 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:890:28@ + +__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_d595bb20cd1f8c02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_55e770906010c318" hs_bindgen_55e770906010c318 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:895:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_55e770906010c318 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_c3311478f06417db" hs_bindgen_c3311478f06417db :: + 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:900: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_c3311478f06417db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_96594cf819323c24" hs_bindgen_96594cf819323c24 :: + 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:905: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_96594cf819323c24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_eeb660adb8a1fa6e" hs_bindgen_eeb660adb8a1fa6e :: + 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:910: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_eeb660adb8a1fa6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_adc60f2bdff633bb" hs_bindgen_adc60f2bdff633bb :: + 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:916: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_adc60f2bdff633bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_6cd6491c868b496d" hs_bindgen_6cd6491c868b496d :: + 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:921: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_6cd6491c868b496d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_4f99851226be6524" hs_bindgen_4f99851226be6524 :: + 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:926: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_4f99851226be6524 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_2834b2d0a2b36a4d" hs_bindgen_2834b2d0a2b36a4d :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:931: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_2834b2d0a2b36a4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_b3a503a384820a9d" hs_bindgen_b3a503a384820a9d :: + 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_b3a503a384820a9d + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:936: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_b3a503a384820a9d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_6e39f3802b11a1a3" hs_bindgen_6e39f3802b11a1a3 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:941: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_6e39f3802b11a1a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_d4e9310e531aaac9" hs_bindgen_d4e9310e531aaac9 :: + 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:948: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_d4e9310e531aaac9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_c18725886a33edaa" hs_bindgen_c18725886a33edaa :: + 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:953: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_c18725886a33edaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_e46fe20ac97197e7" hs_bindgen_e46fe20ac97197e7 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:955: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_e46fe20ac97197e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_cc2d31f3454b6a5b" hs_bindgen_cc2d31f3454b6a5b :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:957: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_cc2d31f3454b6a5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_cc9e2a156164f59c" hs_bindgen_cc9e2a156164f59c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:959: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_cc9e2a156164f59c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_0079f4b967911380" hs_bindgen_0079f4b967911380 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:960: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_0079f4b967911380 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_0cf4208cadc80176" hs_bindgen_0cf4208cadc80176 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:962: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_0cf4208cadc80176 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_6bffc234f6d23f18" hs_bindgen_6bffc234f6d23f18 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:963: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_6bffc234f6d23f18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_d10aef919ac3af79" hs_bindgen_d10aef919ac3af79 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:965: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_d10aef919ac3af79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_e145b68fda2c7df2" hs_bindgen_e145b68fda2c7df2 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:966: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_e145b68fda2c7df2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_901ef5bf06138ce1" hs_bindgen_901ef5bf06138ce1 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:967: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_901ef5bf06138ce1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_53941a625be5f747" hs_bindgen_53941a625be5f747 :: + 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:970: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_53941a625be5f747 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_2124baf800870ad6" hs_bindgen_2124baf800870ad6 :: + 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:973: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_2124baf800870ad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_e81ef0fb57befeef" hs_bindgen_e81ef0fb57befeef :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:980: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_e81ef0fb57befeef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_ed57a07548667b33" hs_bindgen_ed57a07548667b33 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:987: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_ed57a07548667b33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_1bb6333dc686a27d" hs_bindgen_1bb6333dc686a27d :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:992: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_1bb6333dc686a27d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_3979808d18ef751a" hs_bindgen_3979808d18ef751a :: + 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:996: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_3979808d18ef751a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_b0fc72ccbb6927ec" hs_bindgen_b0fc72ccbb6927ec :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:998: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_b0fc72ccbb6927ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_4080672408305a0d" hs_bindgen_4080672408305a0d :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:999: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_4080672408305a0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_f124d36682a9aead" hs_bindgen_f124d36682a9aead :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1001: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_f124d36682a9aead + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_b9a929285446daff" hs_bindgen_b9a929285446daff :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1003: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_b9a929285446daff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_a49f6705024a0dba" hs_bindgen_a49f6705024a0dba :: + 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:1006: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_a49f6705024a0dba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_e4cf61513cd2a110" hs_bindgen_e4cf61513cd2a110 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1008: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_e4cf61513cd2a110 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_9313a3a6c054d9b0" hs_bindgen_9313a3a6c054d9b0 :: + 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:1015: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_9313a3a6c054d9b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_47febc714a0dcd9c" hs_bindgen_47febc714a0dcd9c :: + 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:1022: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_47febc714a0dcd9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_5eb1530231b26e23" hs_bindgen_5eb1530231b26e23 :: + 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:1027: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_5eb1530231b26e23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_2a37f1f903ef1964" hs_bindgen_2a37f1f903ef1964 :: + 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:1032: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_2a37f1f903ef1964 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_2a070bf9355e608d" hs_bindgen_2a070bf9355e608d :: + 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:1050: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_2a070bf9355e608d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_d350d0bd8839c54a" hs_bindgen_d350d0bd8839c54a :: + 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:1061: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_d350d0bd8839c54a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_7241197213e347cf" hs_bindgen_7241197213e347cf :: + 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:1077: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_7241197213e347cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_f8a4a296dceb36d7" hs_bindgen_f8a4a296dceb36d7 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1081: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_f8a4a296dceb36d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_e2eac53d2fe11ea2" hs_bindgen_e2eac53d2fe11ea2 :: + 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:1084: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_e2eac53d2fe11ea2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_dd41db04623945fe" hs_bindgen_dd41db04623945fe :: + 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:1086: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_dd41db04623945fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_6dd438f78a5d187d" hs_bindgen_6dd438f78a5d187d :: + 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:1088: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_6dd438f78a5d187d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_c99bf85fa8689a8f" hs_bindgen_c99bf85fa8689a8f :: + 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:1090: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_c99bf85fa8689a8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_34468fdb69549578" hs_bindgen_34468fdb69549578 :: + 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:1092: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_34468fdb69549578 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_d65f60b107d75389" hs_bindgen_d65f60b107d75389 :: + 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:1112: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_d65f60b107d75389 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_12ad7c48f92da764" hs_bindgen_12ad7c48f92da764 :: + 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:1134: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_12ad7c48f92da764 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_201405a50db8d83a" hs_bindgen_201405a50db8d83a :: + 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_201405a50db8d83a + +{-| 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:1142: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_201405a50db8d83a x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_b6e578a29283a765" hs_bindgen_b6e578a29283a765 :: + 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:1147:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_b6e578a29283a765 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_fbef2f2d3432f6c8" hs_bindgen_fbef2f2d3432f6c8 :: + 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:1159: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_fbef2f2d3432f6c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_914d68f0c4f8a3d6" hs_bindgen_914d68f0c4f8a3d6 :: + 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:1164: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_914d68f0c4f8a3d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_11bd6b9ce3734a22" hs_bindgen_11bd6b9ce3734a22 :: + 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:1169: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_11bd6b9ce3734a22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_c8c1c313d2740aae" hs_bindgen_c8c1c313d2740aae :: + 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:1171: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_c8c1c313d2740aae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_39c0ac13fe3a5d25" hs_bindgen_39c0ac13fe3a5d25 :: + 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:1178: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_39c0ac13fe3a5d25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_a8a2c998b4851b58" hs_bindgen_a8a2c998b4851b58 :: + 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:1193: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_a8a2c998b4851b58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_da4055ea758be136" hs_bindgen_da4055ea758be136 :: + 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:1208: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_da4055ea758be136 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_e306a5449da0e5f9" hs_bindgen_e306a5449da0e5f9 :: + 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:1225: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_e306a5449da0e5f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_f3eaf4fbfca067a5" hs_bindgen_f3eaf4fbfca067a5 :: + 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:1240: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_f3eaf4fbfca067a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_24d4cd5f082b0601" hs_bindgen_24d4cd5f082b0601 :: + 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:1256: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_24d4cd5f082b0601 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_30286a02158340b8" hs_bindgen_30286a02158340b8 :: + 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:1271: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_30286a02158340b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_fefbb2251b9fb6e6" hs_bindgen_fefbb2251b9fb6e6 :: + 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_fefbb2251b9fb6e6 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1282: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_fefbb2251b9fb6e6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_a905893e48696315" hs_bindgen_a905893e48696315 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1284: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_a905893e48696315 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_98d9819c8b2719d2" hs_bindgen_98d9819c8b2719d2 :: + 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:1286: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_98d9819c8b2719d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_ef5d3b364cdd501c" hs_bindgen_ef5d3b364cdd501c :: + 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:1291: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_ef5d3b364cdd501c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_b65c5600bc3af78d" hs_bindgen_b65c5600bc3af78d :: + 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:1296: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_b65c5600bc3af78d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_6feb1b53ce1681a2" hs_bindgen_6feb1b53ce1681a2 :: + 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:1298: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_6feb1b53ce1681a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_f9a854ea05ccf7f3" hs_bindgen_f9a854ea05ccf7f3 :: + 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:1303: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_f9a854ea05ccf7f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_8840299ffee50929" hs_bindgen_8840299ffee50929 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1305: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_8840299ffee50929 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_8d6ae16f0877bc17" hs_bindgen_8d6ae16f0877bc17 :: + 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:1308: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_8d6ae16f0877bc17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_74337ee913552832" hs_bindgen_74337ee913552832 :: + 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:1313:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_74337ee913552832 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b480d06a4d90b070" hs_bindgen_b480d06a4d90b070 :: + 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:1318: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_b480d06a4d90b070 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_bd8235861e1b5b04" hs_bindgen_bd8235861e1b5b04 :: + 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:1320: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_bd8235861e1b5b04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_341d1bde5ad47402" hs_bindgen_341d1bde5ad47402 :: + 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:1325: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_341d1bde5ad47402 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_b0afb7b91c81e8dc" hs_bindgen_b0afb7b91c81e8dc :: + 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_b0afb7b91c81e8dc + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1327: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_b0afb7b91c81e8dc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_1b53d6532708a989" hs_bindgen_1b53d6532708a989 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1330: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_1b53d6532708a989 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_904797ba4a93e9a2" hs_bindgen_904797ba4a93e9a2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1332: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_904797ba4a93e9a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_7e30dacc7f839295" hs_bindgen_7e30dacc7f839295 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1334: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_7e30dacc7f839295 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_12aec0be2cb1e141" hs_bindgen_12aec0be2cb1e141 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1336: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_12aec0be2cb1e141 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_f7562380b28e8fd7" hs_bindgen_f7562380b28e8fd7 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1338: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_f7562380b28e8fd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_528807f69b7b8164" hs_bindgen_528807f69b7b8164 :: + 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:1341: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_528807f69b7b8164 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_ccaf6fe8223b4a10" hs_bindgen_ccaf6fe8223b4a10 :: + 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:1343: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_ccaf6fe8223b4a10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_f42b813893d2a31a" hs_bindgen_f42b813893d2a31a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1346: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_f42b813893d2a31a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_669392a9a37ee466" hs_bindgen_669392a9a37ee466 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1348: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_669392a9a37ee466 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_62d6e5ffaeaaa745" hs_bindgen_62d6e5ffaeaaa745 :: + 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:1354: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_62d6e5ffaeaaa745 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_37b8e2567d50f4c5" hs_bindgen_37b8e2567d50f4c5 :: + 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:1357: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_37b8e2567d50f4c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_f0dcd1ce29f94b38" hs_bindgen_f0dcd1ce29f94b38 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1360: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_f0dcd1ce29f94b38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_dfecbeae6a11db32" hs_bindgen_dfecbeae6a11db32 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1363: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_dfecbeae6a11db32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_35a012da336f06cf" hs_bindgen_35a012da336f06cf :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1365: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_35a012da336f06cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_aa84d1a5ab013de8" hs_bindgen_aa84d1a5ab013de8 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1367: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_aa84d1a5ab013de8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_3b492ecf1a2c2b08" hs_bindgen_3b492ecf1a2c2b08 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1369: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_3b492ecf1a2c2b08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_3d7f7a6b19d4578a" hs_bindgen_3d7f7a6b19d4578a :: + 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:1384: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_3d7f7a6b19d4578a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_f3d408528d03f9fd" hs_bindgen_f3d408528d03f9fd :: + 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:1398: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_f3d408528d03f9fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_1814db2ddcd0b54f" hs_bindgen_1814db2ddcd0b54f :: + 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:1416: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_1814db2ddcd0b54f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_afe48a2cf6081014" hs_bindgen_afe48a2cf6081014 :: + 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:1431: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_afe48a2cf6081014 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_7d70fa5b9f8bed05" hs_bindgen_7d70fa5b9f8bed05 :: + 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_7d70fa5b9f8bed05 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1437: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_7d70fa5b9f8bed05 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_eade2965586ff178" hs_bindgen_eade2965586ff178 :: + 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_eade2965586ff178 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1439: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_eade2965586ff178 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_1240fbf42dfa5cee" hs_bindgen_1240fbf42dfa5cee :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1441: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_1240fbf42dfa5cee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_b49ba171512fa202" hs_bindgen_b49ba171512fa202 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1443: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_b49ba171512fa202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_55a7d64f19ee600c" hs_bindgen_55a7d64f19ee600c :: + 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_55a7d64f19ee600c + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1449: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_55a7d64f19ee600c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_96fbd4ba9ff3db7b" hs_bindgen_96fbd4ba9ff3db7b :: + 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_96fbd4ba9ff3db7b + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1451: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_96fbd4ba9ff3db7b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_fa87b9e0256a9aff" hs_bindgen_fa87b9e0256a9aff :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1453: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_fa87b9e0256a9aff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_e3a65b5580e99095" hs_bindgen_e3a65b5580e99095 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1455: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_e3a65b5580e99095 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_7d8ea634e47c3d78" hs_bindgen_7d8ea634e47c3d78 :: + 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_7d8ea634e47c3d78 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1461: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_7d8ea634e47c3d78 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_64a6899b9f5fada7" hs_bindgen_64a6899b9f5fada7 :: + 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_64a6899b9f5fada7 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1463: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_64a6899b9f5fada7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_de9512f5aae37fb4" hs_bindgen_de9512f5aae37fb4 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1465: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_de9512f5aae37fb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_671249edee67da6b" hs_bindgen_671249edee67da6b :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1467: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_671249edee67da6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_79df60e5716fe805" hs_bindgen_79df60e5716fe805 :: + 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_79df60e5716fe805 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1473: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_79df60e5716fe805 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_b530ef271fc54115" hs_bindgen_b530ef271fc54115 :: + 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_b530ef271fc54115 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1475: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_b530ef271fc54115 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_93f5aa8a2e2fbb44" hs_bindgen_93f5aa8a2e2fbb44 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1477: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_93f5aa8a2e2fbb44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f87d954378709422" hs_bindgen_f87d954378709422 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1479: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_f87d954378709422 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_fbb95f8dba64fb20" hs_bindgen_fbb95f8dba64fb20 :: + 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_fbb95f8dba64fb20 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1485: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_fbb95f8dba64fb20 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_b57f5aa8762dc0a6" hs_bindgen_b57f5aa8762dc0a6 :: + 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_b57f5aa8762dc0a6 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1487: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_b57f5aa8762dc0a6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_cee6c821cc3aebe3" hs_bindgen_cee6c821cc3aebe3 :: + 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:1490: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_cee6c821cc3aebe3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_430fb34e96edd44b" hs_bindgen_430fb34e96edd44b :: + 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:1493: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_430fb34e96edd44b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_70d26eff347f9afc" hs_bindgen_70d26eff347f9afc :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1499: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_70d26eff347f9afc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_ade5854cbff8fcdf" hs_bindgen_ade5854cbff8fcdf :: + 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:1502: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_ade5854cbff8fcdf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_5201f609fff7fd94" hs_bindgen_5201f609fff7fd94 :: + 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:1505: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_5201f609fff7fd94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_2ada54741be43677" hs_bindgen_2ada54741be43677 :: + 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:1508: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_2ada54741be43677 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_aab2491ae3444e68" hs_bindgen_aab2491ae3444e68 :: + 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:1511: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_aab2491ae3444e68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_9ed7a78601a0bfe8" hs_bindgen_9ed7a78601a0bfe8 :: + 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:1514: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_9ed7a78601a0bfe8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_ee0486ccf75ffbf6" hs_bindgen_ee0486ccf75ffbf6 :: + 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:1517: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_ee0486ccf75ffbf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_b962aea007ed2ccb" hs_bindgen_b962aea007ed2ccb :: + 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:1521: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_b962aea007ed2ccb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_b6e1cb5602711e55" hs_bindgen_b6e1cb5602711e55 :: + 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:1525: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_b6e1cb5602711e55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_c6bbabdc55f98bbb" hs_bindgen_c6bbabdc55f98bbb :: + 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:1528: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_c6bbabdc55f98bbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_f07afc6e6a2393ab" hs_bindgen_f07afc6e6a2393ab :: + 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:1535: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_f07afc6e6a2393ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_f4c93c72489949e9" hs_bindgen_f4c93c72489949e9 :: + 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:1543: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_f4c93c72489949e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_800f55ccfbc16cb9" hs_bindgen_800f55ccfbc16cb9 :: + 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:1548: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_800f55ccfbc16cb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_487566a68f8d295e" hs_bindgen_487566a68f8d295e :: + 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:1551: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_487566a68f8d295e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_b98d72ece8c1e510" hs_bindgen_b98d72ece8c1e510 :: + 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_b98d72ece8c1e510 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1554: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_b98d72ece8c1e510 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_e40a094e07a03030" hs_bindgen_e40a094e07a03030 :: + 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:1567: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_e40a094e07a03030 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_6b8d2f8ce1b998cb" hs_bindgen_6b8d2f8ce1b998cb :: + 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:1572: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_6b8d2f8ce1b998cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_b2e4b4632810057c" hs_bindgen_b2e4b4632810057c :: + 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:1575: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_b2e4b4632810057c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_118b5279677e7506" hs_bindgen_118b5279677e7506 :: + 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_118b5279677e7506 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1578: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_118b5279677e7506 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_7770352be7ee84b6" hs_bindgen_7770352be7ee84b6 :: + 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:1590: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_7770352be7ee84b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_1b3c2e96380f4183" hs_bindgen_1b3c2e96380f4183 :: + 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:1595: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_1b3c2e96380f4183 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_c4cc1220054255ad" hs_bindgen_c4cc1220054255ad :: + 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:1597: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_c4cc1220054255ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_b61b5345f3eadca8" hs_bindgen_b61b5345f3eadca8 :: + 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_b61b5345f3eadca8 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1599: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_b61b5345f3eadca8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_92f1d8109b280b9d" hs_bindgen_92f1d8109b280b9d :: + 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:1602: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_92f1d8109b280b9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_a8a0958cd8475c1d" hs_bindgen_a8a0958cd8475c1d :: + 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:1610: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_a8a0958cd8475c1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_c093fb2cd423a762" hs_bindgen_c093fb2cd423a762 :: + 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:1618: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_c093fb2cd423a762 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_3b3da077767e295e" hs_bindgen_3b3da077767e295e :: + 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_3b3da077767e295e + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1620: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_3b3da077767e295e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_b6075fe0e12aff38" hs_bindgen_b6075fe0e12aff38 :: + 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_b6075fe0e12aff38 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1621: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_b6075fe0e12aff38 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_2b3fb47b7845f1a6" hs_bindgen_2b3fb47b7845f1a6 :: + 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:1629: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_2b3fb47b7845f1a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_3c022cf0d405e40a" hs_bindgen_3c022cf0d405e40a :: + 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:1634: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_3c022cf0d405e40a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_58fec898b2fb3489" hs_bindgen_58fec898b2fb3489 :: + 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:1636: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_58fec898b2fb3489 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_a5710bdcc41c8aba" hs_bindgen_a5710bdcc41c8aba :: + 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:1639: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_a5710bdcc41c8aba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_55c724c6c71db092" hs_bindgen_55c724c6c71db092 :: + 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:1641: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_55c724c6c71db092 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_910d94da183aad8d" hs_bindgen_910d94da183aad8d :: + 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_910d94da183aad8d + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1644: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_910d94da183aad8d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_188cb0f03db8f23f" hs_bindgen_188cb0f03db8f23f :: + 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:1658: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_188cb0f03db8f23f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_d9ee767b405dbb0d" hs_bindgen_d9ee767b405dbb0d :: + 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:1663: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_d9ee767b405dbb0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_7ee5f65f9d463638" hs_bindgen_7ee5f65f9d463638 :: + 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:1666: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_7ee5f65f9d463638 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_294a01fcefde8556" hs_bindgen_294a01fcefde8556 :: + 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:1671: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_294a01fcefde8556 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_5adb4df159b7b932" hs_bindgen_5adb4df159b7b932 :: + 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_5adb4df159b7b932 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1675: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_5adb4df159b7b932 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_e2449bb65c6dd3bd" hs_bindgen_e2449bb65c6dd3bd :: + 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:1688: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_e2449bb65c6dd3bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_6aab4dab2414ac2d" hs_bindgen_6aab4dab2414ac2d :: + 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:1693: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_6aab4dab2414ac2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_81958de9b485fef2" hs_bindgen_81958de9b485fef2 :: + 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:1696: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_81958de9b485fef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_da5d2d9e79143d4e" hs_bindgen_da5d2d9e79143d4e :: + 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_da5d2d9e79143d4e + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1701: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_da5d2d9e79143d4e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_73cc5476eb3a8eb7" hs_bindgen_73cc5476eb3a8eb7 :: + 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:1714: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_73cc5476eb3a8eb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_ac1a17d66aba0536" hs_bindgen_ac1a17d66aba0536 :: + 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_ac1a17d66aba0536 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1721: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_ac1a17d66aba0536 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_e6dbb22e8ab2212f" hs_bindgen_e6dbb22e8ab2212f :: + 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_e6dbb22e8ab2212f + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1736: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_e6dbb22e8ab2212f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_35197da8640ddd95" hs_bindgen_35197da8640ddd95 :: + 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_35197da8640ddd95 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1751: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_35197da8640ddd95 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_865fb449d5c477ce" hs_bindgen_865fb449d5c477ce :: + 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:1752: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_865fb449d5c477ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_70dd7c7635f84013" hs_bindgen_70dd7c7635f84013 :: + 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:1757: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_70dd7c7635f84013 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_21b369e5bc0e60b4" hs_bindgen_21b369e5bc0e60b4 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1759: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_21b369e5bc0e60b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_31e2240822b606d6" hs_bindgen_31e2240822b606d6 :: + 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:1762: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_31e2240822b606d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_79c36b1c95be2018" hs_bindgen_79c36b1c95be2018 :: + 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:1763: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_79c36b1c95be2018 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_d6007351b2dc802c" hs_bindgen_d6007351b2dc802c :: + 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:1765: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_d6007351b2dc802c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_df9da2d76ecc3fb1" hs_bindgen_df9da2d76ecc3fb1 :: + 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:1766: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_df9da2d76ecc3fb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_c064c5c6d515c6e2" hs_bindgen_c064c5c6d515c6e2 :: + 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:1769: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_c064c5c6d515c6e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_cac57fe06cd460d9" hs_bindgen_cac57fe06cd460d9 :: + 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:1771: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_cac57fe06cd460d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_905156b63b52b123" hs_bindgen_905156b63b52b123 :: + 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:1772: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_905156b63b52b123 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_42e55de5d5ae375c" hs_bindgen_42e55de5d5ae375c :: + 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:1773: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_42e55de5d5ae375c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_247ec6e1869751b5" hs_bindgen_247ec6e1869751b5 :: + 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:1775: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_247ec6e1869751b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_32af7e64617562c5" hs_bindgen_32af7e64617562c5 :: + 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:1778: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_32af7e64617562c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_cdfeebbab9326c7d" hs_bindgen_cdfeebbab9326c7d :: + 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:1780: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_cdfeebbab9326c7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_95e426b2690e8dd8" hs_bindgen_95e426b2690e8dd8 :: + 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:1783: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_95e426b2690e8dd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_9b7614db82e4a559" hs_bindgen_9b7614db82e4a559 :: + 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:1787: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_9b7614db82e4a559 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_58ad89930226874a" hs_bindgen_58ad89930226874a :: + 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:1790: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_58ad89930226874a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_cd4eeb7b4b308159" hs_bindgen_cd4eeb7b4b308159 :: + 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:1793: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_cd4eeb7b4b308159 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_72732234d0de12aa" hs_bindgen_72732234d0de12aa :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1809: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_72732234d0de12aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_e1c17d37fe5a372f" hs_bindgen_e1c17d37fe5a372f :: + 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:1815: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_e1c17d37fe5a372f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_b223771e47c64ef9" hs_bindgen_b223771e47c64ef9 :: + 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:1826: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_b223771e47c64ef9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_f3de60b8a8059d97" hs_bindgen_f3de60b8a8059d97 :: + 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:1841: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_f3de60b8a8059d97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_986df1a15dfdbbf0" hs_bindgen_986df1a15dfdbbf0 :: + 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:1849: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_986df1a15dfdbbf0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_b13c9abb3c6a383d" hs_bindgen_b13c9abb3c6a383d :: + 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_b13c9abb3c6a383d + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1851: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_b13c9abb3c6a383d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_5bbd75da734d013c" hs_bindgen_5bbd75da734d013c :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1853: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_5bbd75da734d013c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_9e6eb1262f30bdbc" hs_bindgen_9e6eb1262f30bdbc :: + 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:1859: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_9e6eb1262f30bdbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_687801a25ec9f750" hs_bindgen_687801a25ec9f750 :: + 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:1866: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_687801a25ec9f750 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_8f3ec176e2ca65e2" hs_bindgen_8f3ec176e2ca65e2 :: + 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_8f3ec176e2ca65e2 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1884: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_8f3ec176e2ca65e2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_df7be2794b7a90cc" hs_bindgen_df7be2794b7a90cc :: + 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_df7be2794b7a90cc + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1893: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_df7be2794b7a90cc (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_9659fc4fc22a0664" hs_bindgen_9659fc4fc22a0664 :: + 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_9659fc4fc22a0664 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1901: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_9659fc4fc22a0664 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_05aec5a9e67ea052" hs_bindgen_05aec5a9e67ea052 :: + 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_05aec5a9e67ea052 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1911: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_05aec5a9e67ea052 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b781a609f762ad44" hs_bindgen_b781a609f762ad44 :: + 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_b781a609f762ad44 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1930: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_b781a609f762ad44 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_ed97665be8e3d476" hs_bindgen_ed97665be8e3d476 :: + 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:1937:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_ed97665be8e3d476 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_048d3258ab6468df" hs_bindgen_048d3258ab6468df :: + 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:1943: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_048d3258ab6468df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_dc06398fb8735bbe" hs_bindgen_dc06398fb8735bbe :: + 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:1949: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_dc06398fb8735bbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_b8965c1968d3c482" hs_bindgen_b8965c1968d3c482 :: + 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_b8965c1968d3c482 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1962: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_b8965c1968d3c482 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_2d7f0f059e31f4b0" hs_bindgen_2d7f0f059e31f4b0 :: + 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:1970:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_2d7f0f059e31f4b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_e043d168b0aef0bb" hs_bindgen_e043d168b0aef0bb :: + 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:1979: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_e043d168b0aef0bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_c360dd7fbf0271fa" hs_bindgen_c360dd7fbf0271fa :: + 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:1990: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_c360dd7fbf0271fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_0215815c28c54121" hs_bindgen_0215815c28c54121 :: + 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_0215815c28c54121 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2001: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_0215815c28c54121 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_70e766e0b161fe8b" hs_bindgen_70e766e0b161fe8b :: + 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:2008:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_70e766e0b161fe8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_8870bfef1f982fcc" hs_bindgen_8870bfef1f982fcc :: + 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_8870bfef1f982fcc + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2011: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_8870bfef1f982fcc x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_a7c2126a8e4aabb8" hs_bindgen_a7c2126a8e4aabb8 :: + 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_a7c2126a8e4aabb8 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2014: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_a7c2126a8e4aabb8 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_071dad9eb0eb2c69" hs_bindgen_071dad9eb0eb2c69 :: + 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:2026: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_071dad9eb0eb2c69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_7828c7d8598295bb" hs_bindgen_7828c7d8598295bb :: + 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:2034: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_7828c7d8598295bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_6e66050ecc3c1426" hs_bindgen_6e66050ecc3c1426 :: + 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_6e66050ecc3c1426 + +{-| 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:2049: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_6e66050ecc3c1426 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_b079f3f58d4a4fec" hs_bindgen_b079f3f58d4a4fec :: + 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_b079f3f58d4a4fec + +{-| 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:2068: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_b079f3f58d4a4fec x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_c9d4ff709a5dedc6" hs_bindgen_c9d4ff709a5dedc6 :: + 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_c9d4ff709a5dedc6 + +{-| 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:2084: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_c9d4ff709a5dedc6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_43afa838d759d3c5" hs_bindgen_43afa838d759d3c5 :: + 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_43afa838d759d3c5 + +{-| 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:2111: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_43afa838d759d3c5 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_4_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_3856c3c90f61e8d5" hs_bindgen_3856c3c90f61e8d5 :: + 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:2129: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_3856c3c90f61e8d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_2a20c692aee144f7" hs_bindgen_2a20c692aee144f7 :: + 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:2150: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_2a20c692aee144f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_4_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_9cc810182eaabdde" hs_bindgen_9cc810182eaabdde :: + 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:2171: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_9cc810182eaabdde diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0.hs new file mode 100644 index 00000000..aa3e3a1c --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0.hs @@ -0,0 +1,1486 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_5_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:102: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 + +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:103: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:104: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:106: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:107: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:109: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:110: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:112: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:113: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:114: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:115: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:117: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:118: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:119: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:120: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:121: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:122: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:124: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:125: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:127: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:128: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:129: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:131: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:134: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' + +__defined at:__ @botan\/ffi.h:143:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:143: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:152:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:152: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:225:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:260:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:260: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:348:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:348: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:428:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:428: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:524:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:524: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:526: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:527: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:528: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:621: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:822:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:822: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:888:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:888: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1085:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1085: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:1098: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:1168: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:1169:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1299:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1299: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1559:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1559: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1583:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1583: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:1604:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1606:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1606: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1626:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1626: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1645:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1645: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1674: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:1674: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1704: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:1704: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1768:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1768: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1815: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 + +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:1816: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:1817: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:1818: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:1819: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:1820: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:1821: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:1822: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:1823: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:1824: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:1825: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1866:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1866: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1943:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1943: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1975:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1975: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2015:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2015: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:2017: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2038: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:2038: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_5_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/FunPtr.hs new file mode 100644 index 00000000..b7667dd9 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/FunPtr.hs @@ -0,0 +1,8581 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_5_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_5_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_5_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_1e5ccd99eaf37f7c (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_ec31b118925e35be (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_4a1d63cc58f5a360 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a0fa2dead76e6e6 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f860d0a2aa26b82e (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_ff1259a56dd49bf1 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_421a920a3233c2eb (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_6a2381f69fba22a7 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_0c9c87a929796e69 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_155519a5e438a997 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_773c4fe61c521f54 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_adeb547970ef3d17 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2dff7d78bcaa4db6 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2df186ff4af38d00 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a8f4811c35df525 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4b348404461cc11 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_297b691a3167bb00 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0f9e5f182ed6b0c (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_5_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0195a08decb78f58 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ecbdd15acaa3a14c (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4350aa7cc7f3f62f (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d2fe3e93430d69a (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3f8fe12bde57c1c (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d374c2f55a86709 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_594583c6860f451e (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_086dc70b054337aa (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5bee79e44c314dcb (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7ce452326e55d69 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ae1528a7edbc2bd (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75ace146eb9e5fb8 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25e027d95df8d642 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45ddb172f9c37734 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc6b24bfa8c7bad6 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a476b2b60096f59e (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8909f7d32d31b867 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f478b36214cd1633 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8eec967ea7734b0 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c37d22fbf4db3a8f (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_921076b4fcc4463e (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81282ebf9ee27fbf (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dd20ae210d6373e2 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4119470fff6b59c (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_5_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27c7b9f2157daf6a (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ec9c1f962c96402 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0717d47437c67347 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5b33e4f3b1cbb81 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5885676c388a8654 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37481742147bf0d2 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b9fb9a6ffee77df (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74549c145f74ed00 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40c01cda86d3ed09 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_711cdd14af1bda04 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc6b725c070eeaa4 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b1509b4f5edee1a (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5849d22b3f136bc5 (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_5_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54d42375cafdb829 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a68f784f20a3b92b (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a47bdd78797d1119 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_648ac3e0c2b7cdff (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_958b6aba63952f20 (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_5_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f10bc161211f897 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bcb399e7ddba28b (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9501a4792ca07b6 (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_5_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a2eceabae618352 (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_5_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69ba26b2ad95e21a (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_5_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4facd56fd6194d83 (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_5_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1606af6c3283c2cb (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_5_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d7c03dc32888256 (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_5_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11cbc0b88c22ce34 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_094940ff8a90461a (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2bbbadebb01014a0 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_caf86aac5504de03 (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_5_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1a38325fb72400f (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27c198258a868146 (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_5_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c95e3ba97591048 (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_5_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_287a24ff44466bae (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7048db4d1cb76d3 (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_5_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de1b38f8f12f5b7c (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f09152b1c92d600c (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d26917a3de1dc47d (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b558463b25109f8 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b913f974196d821 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b718e6203082bc0d (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a49868af3a18daf8 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b676b5dbb915e4c2 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_957222c2de69dd7c (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_02c24e01a274c856 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56a0534cdc20b0d0 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92db7e6c68f35c74 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbc914302b8963c7 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69279e4d4c1d23b6 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f96ea994bc5e9ae1 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbc6e71b7bc2b5b5 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_912f4aca52985aa5 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32b1570f870f9e76 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_833d643e444d781a (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4b4b3c7d9274d54 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2ab81295f3def04 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f77714cf8b8c724c (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1443c95b7922eae7 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b251114b491c2720 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd4937f6ff076c93 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b5f59386cd7bf2a (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_5_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd63b80d8d340146 (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_5_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6eaa23b6055eb515 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e3ef9ee0fff5ab5 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3de62ced50317c56 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_434c70b8ec177dfb (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_5_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72d76231795e6145 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bf3425da94a07e9 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8168ba742d8ea96 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4893db1b2d65bc73 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33c7c742c3f72f58 (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_5_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3256bea9937c59ee (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a230c08c75cfcc7 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8647e3bb2bc8d993 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc58ddf4343e3687 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0112ee51587b8036 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e141dade117a5cf8 (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_5_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05d0f496bee6f067 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0256308b3f4b6da1 (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_5_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_199665af64d0abcc (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e86d5116ce42445 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01d35e5778139ff1 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a431fba88bef144c (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_444fb62064165b58 (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_5_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae5c28c8b08fa2dd (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bde41b211664ae7 (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_5_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86e5806b73d6f2c4 (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_5_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8baf8a1f043df06b (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_5_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_021de7171c4fa4f3 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c7ffc8d64e76082 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a4d87f4162bb6a7 (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_5_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c267d030b9011639 (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_5_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_304b303c048cb787 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83a1522f0b10131e (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_5_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16eb9b065af80f24 (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_5_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_452727cf3f078478 (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_5_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4fa2d3cbb89b781 (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_5_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec8537cfd7ff1915 (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_5_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c44d9b7d33c67dee (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_5_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26de67d9ad67fc39 (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_5_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8b9b27861b66271 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fd48d6122f4cc31 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7711850cde1b35de (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22190b27ab96e9cc (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_5_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a9ade93cbf77fab (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_5_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83f44b05ce944f8e (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db65dd444f41a9df (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_173a14e54603c83e (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c916f86511654a4 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_386c189d191fc42f (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66a48df4ffb14e2f (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ebb6a423618fae8 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71bdd68902f65983 (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_5_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_189d7d0c40a291cb (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_944b16c5345799a9 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_faf8f294495e3cac (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95ff3775f4830cd3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73358f5c16721695 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a052034abdbc3e4b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77e6d948ad7747a2 (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_5_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c7c05df7c3c360d (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d904e9bfab230de (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5e8b3ca3228c419 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e203eeeb91cfd9b (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_5_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec04fdf0a1e9b17a (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_5_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1494c4dcbe384e80 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_43bce242b98402d8 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f13e2fb1a71e9c1f (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_887b81f55fa1e49b (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b7b4e780b5f0c1a (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_262c8fc56e81141c (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_5_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e1536bf9df4f9c3 (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_5_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1a054eddf433f58 (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_5_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ee9badecb36534a (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_5_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73413c28cc89ec20 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3678a521965bfc05 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a544412106db93fc (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d9603a47b353986 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ee501139a0db41d (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_925573ebfe67afbf (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01ddbc887279e55d (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_268bc6ae2ac23640 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_998172323dba98e8 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f586dfccd1894c5 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0362b51b86961ef2 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f899dac7b735aabe (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93d71ba532e8f794 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36edeb851f585f1c (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c67364e401a7c19d (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f94fc06900803269 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e86a9a7eae8dc5c7 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fece9d76d9c45d43 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c62282587249560 (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_5_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14d036818bb4d2d4 (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_5_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fdcfa55dd161dff (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a40bec7bd070a71b (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d141bc4803af1b0 (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_5_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65cff277b617ba23 (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_5_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0704d46d90ac7da5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3b95eeb052fa361 (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_5_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e67c13dbb5289ef4 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_caeffa140f3d5f14 (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_5_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05f0253ca86ad072 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_097c7e58ac62ee94 (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_5_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ab5863cef27ea49 (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_5_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_440e324835561056 (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_5_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae005d5e8f643f66 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1f69966d90b66da (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_5_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0dd7c0b1243ad653 (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_5_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5ccbc7a59a89f2b (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_5_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e5e23de62e747df (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ccf98a3a799505a0 (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_5_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_379f8b54c9430bc5 (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_5_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cba9ce16bf3559d0 (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_5_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cfe74b2bac91e44f (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fac3a8f4168402bc (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a2f91f1ea47eac9 (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_5_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56321687600a374f (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_5_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_558d965ed16a9bd6 (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_5_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56bca7c9166d7bb0 (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f08dabd5200efc11 (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_5_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e38ca982a8a614b (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_5_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ea31a9f7c880214 (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_5_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fda1dbc7d3bd31bd (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a8fe7bd82e1ef81 (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_5_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_686cbd4606841402 (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_5_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_045a35990a886c49 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5be7d4b99fc6e9b1 (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_5_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7193a221c54b8093 (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_5_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0249ea176817c198 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e6a213c4969c97c (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_5_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f81f95b5a174f85 (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_5_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_588ca2bae52c0af9 (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_5_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_17bafd3be657bb48 (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_5_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc65a206c0c1847f (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7850beb5849ca68 (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_5_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5af4731a51d8d26 (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_5_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c84011fd337a1553 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92c8a555750a5ae6 (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_5_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34dfcb210c7b028c (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_5_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_522f7058f1871998 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_63e77e42d8d871f2 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20d8bc41bcfce817 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28b0713ed1d44525 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff4d0da11ea8a5a3 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7bdc083f17c0048 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d3ce9887313952b (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c669eec7f9179b0 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9555f69a033e359 (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_5_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53e10c50334173e7 (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_5_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a74467ecc7e22844 (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_5_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c77025c771813d1 (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_5_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56734b939e7e47c5 (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_5_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6363aabbf64bca10 (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_5_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5117dbee224ef2d3 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93f5f7aaef3808f4 (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_5_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40fc4ca2300861a2 (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_5_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64d120d3751cdf06 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79ec0616d9974348 (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_5_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_174cee737e87cc1a (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7213d96534069fac (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d4978a1d3deb8ad (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_5_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_e7960a6b90240168 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b6210a80a8f09d4 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88e58af65f22f499 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b354f1a971bcf266 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_632c13a7ac5609a0 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a5d4c63707e8a40 (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_5_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a93eca52088206c (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_5_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3236d1e6a55b72a (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_5_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_454e1938f5e9bbd5 (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_5_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a794a60712aaaefc (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_5_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1bcfb9eb3a04f076 (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_5_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14d3c628eaa4133a (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_441eee69b19aee29 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_767ac7a4b995b1da (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_5_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_041305981eb32d48 (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_5_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18556d6b0249b98c (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_21aa92ee7fe8c2d2 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2463d9bcfbb82060 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a12c8c9a09f6d820 (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_5_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c936d2d8a749f20 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5cb83269d01b0bcf (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_5_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f97bf12d7987585c (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_5_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9056c97c626e7bc8 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9e617058f92f5d9 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b0a4578968ae4f7 (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_5_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24c1a104fdfe99f1 (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_5_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4f21b87d803e4543 (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_5_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4936cd8f0d9db2ef (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_5_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_606d1237999bddc7 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d40faa2320bfb7bb (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_5_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_273901fd220dbb3b (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;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_1e5ccd99eaf37f7c" hs_bindgen_1e5ccd99eaf37f7c :: + 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:158: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_1e5ccd99eaf37f7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_ec31b118925e35be" hs_bindgen_ec31b118925e35be :: + 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:167: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_ec31b118925e35be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_4a1d63cc58f5a360" hs_bindgen_4a1d63cc58f5a360 :: + 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:174: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_4a1d63cc58f5a360 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_4a0fa2dead76e6e6" hs_bindgen_4a0fa2dead76e6e6 :: + 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:180: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_4a0fa2dead76e6e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_f860d0a2aa26b82e" hs_bindgen_f860d0a2aa26b82e :: + 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:185: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_f860d0a2aa26b82e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_ff1259a56dd49bf1" hs_bindgen_ff1259a56dd49bf1 :: + 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:190: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_ff1259a56dd49bf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_421a920a3233c2eb" hs_bindgen_421a920a3233c2eb :: + 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:195: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_421a920a3233c2eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_6a2381f69fba22a7" hs_bindgen_6a2381f69fba22a7 :: + 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:200: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_6a2381f69fba22a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_0c9c87a929796e69" hs_bindgen_0c9c87a929796e69 :: + 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:206: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_0c9c87a929796e69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_155519a5e438a997" hs_bindgen_155519a5e438a997 :: + 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:211: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_155519a5e438a997 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_773c4fe61c521f54" hs_bindgen_773c4fe61c521f54 :: + 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:217: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_773c4fe61c521f54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_adeb547970ef3d17" hs_bindgen_adeb547970ef3d17 :: + 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:223: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_adeb547970ef3d17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_2dff7d78bcaa4db6" hs_bindgen_2dff7d78bcaa4db6 :: + 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:235: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_2dff7d78bcaa4db6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_2df186ff4af38d00" hs_bindgen_2df186ff4af38d00 :: + 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:245: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_2df186ff4af38d00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_6a8f4811c35df525" hs_bindgen_6a8f4811c35df525 :: + 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:250: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_6a8f4811c35df525 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_c4b348404461cc11" hs_bindgen_c4b348404461cc11 :: + 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:255: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_c4b348404461cc11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_297b691a3167bb00" hs_bindgen_297b691a3167bb00 :: + 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:272: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_297b691a3167bb00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_e0f9e5f182ed6b0c" hs_bindgen_e0f9e5f182ed6b0c :: + 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:284: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_e0f9e5f182ed6b0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_0195a08decb78f58" hs_bindgen_0195a08decb78f58 :: + 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:298: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_0195a08decb78f58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_ecbdd15acaa3a14c" hs_bindgen_ecbdd15acaa3a14c :: + 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:306: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_ecbdd15acaa3a14c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_4350aa7cc7f3f62f" hs_bindgen_4350aa7cc7f3f62f :: + 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:316: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_4350aa7cc7f3f62f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_7d2fe3e93430d69a" hs_bindgen_7d2fe3e93430d69a :: + 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:326: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_7d2fe3e93430d69a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_e3f8fe12bde57c1c" hs_bindgen_e3f8fe12bde57c1c :: + 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:336: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_e3f8fe12bde57c1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_6d374c2f55a86709" hs_bindgen_6d374c2f55a86709 :: + 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:343: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_6d374c2f55a86709 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_594583c6860f451e" hs_bindgen_594583c6860f451e :: + 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:357: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_594583c6860f451e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_086dc70b054337aa" hs_bindgen_086dc70b054337aa :: + 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:365: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_086dc70b054337aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_5bee79e44c314dcb" hs_bindgen_5bee79e44c314dcb :: + 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:373: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_5bee79e44c314dcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_b7ce452326e55d69" hs_bindgen_b7ce452326e55d69 :: + 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:381: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_b7ce452326e55d69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_6ae1528a7edbc2bd" hs_bindgen_6ae1528a7edbc2bd :: + 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:390: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_6ae1528a7edbc2bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_75ace146eb9e5fb8" hs_bindgen_75ace146eb9e5fb8 :: + 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:400: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_75ace146eb9e5fb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_25e027d95df8d642" hs_bindgen_25e027d95df8d642 :: + 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:408: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_25e027d95df8d642 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_45ddb172f9c37734" hs_bindgen_45ddb172f9c37734 :: + 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:415: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_45ddb172f9c37734 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_dc6b24bfa8c7bad6" hs_bindgen_dc6b24bfa8c7bad6 :: + 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:423: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_dc6b24bfa8c7bad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_a476b2b60096f59e" hs_bindgen_a476b2b60096f59e :: + 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:438: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_a476b2b60096f59e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_8909f7d32d31b867" hs_bindgen_8909f7d32d31b867 :: + 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:446: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_8909f7d32d31b867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_f478b36214cd1633" hs_bindgen_f478b36214cd1633 :: + 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:455: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_f478b36214cd1633 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_e8eec967ea7734b0" hs_bindgen_e8eec967ea7734b0 :: + 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:464: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_e8eec967ea7734b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_c37d22fbf4db3a8f" hs_bindgen_c37d22fbf4db3a8f :: + 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:473: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_c37d22fbf4db3a8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_921076b4fcc4463e" hs_bindgen_921076b4fcc4463e :: + 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:483: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_921076b4fcc4463e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_81282ebf9ee27fbf" hs_bindgen_81282ebf9ee27fbf :: + 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:491: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_81282ebf9ee27fbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_dd20ae210d6373e2" hs_bindgen_dd20ae210d6373e2 :: + 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:499: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_dd20ae210d6373e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_d4119470fff6b59c" hs_bindgen_d4119470fff6b59c :: + 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:509: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_d4119470fff6b59c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_27c7b9f2157daf6a" hs_bindgen_27c7b9f2157daf6a :: + 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:519: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_27c7b9f2157daf6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_9ec9c1f962c96402" hs_bindgen_9ec9c1f962c96402 :: + 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:533: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_9ec9c1f962c96402 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_0717d47437c67347" hs_bindgen_0717d47437c67347 :: + 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:538: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_0717d47437c67347 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_c5b33e4f3b1cbb81" hs_bindgen_c5b33e4f3b1cbb81 :: + 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:543: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_c5b33e4f3b1cbb81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_5885676c388a8654" hs_bindgen_5885676c388a8654 :: + 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:548: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_5885676c388a8654 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_37481742147bf0d2" hs_bindgen_37481742147bf0d2 :: + 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:553: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_37481742147bf0d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_5b9fb9a6ffee77df" hs_bindgen_5b9fb9a6ffee77df :: + 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:558: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_5b9fb9a6ffee77df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_74549c145f74ed00" hs_bindgen_74549c145f74ed00 :: + 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:565: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_74549c145f74ed00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_40c01cda86d3ed09" hs_bindgen_40c01cda86d3ed09 :: + 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:570: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_40c01cda86d3ed09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_711cdd14af1bda04" hs_bindgen_711cdd14af1bda04 :: + 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:576: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_711cdd14af1bda04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_dc6b725c070eeaa4" hs_bindgen_dc6b725c070eeaa4 :: + 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:582: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_dc6b725c070eeaa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_8b1509b4f5edee1a" hs_bindgen_8b1509b4f5edee1a :: + 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:588: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_8b1509b4f5edee1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5849d22b3f136bc5" hs_bindgen_5849d22b3f136bc5 :: + 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:594: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_5849d22b3f136bc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_54d42375cafdb829" hs_bindgen_54d42375cafdb829 :: + 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:599: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_54d42375cafdb829 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_a68f784f20a3b92b" hs_bindgen_a68f784f20a3b92b :: + 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:609: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_a68f784f20a3b92b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_a47bdd78797d1119" hs_bindgen_a47bdd78797d1119 :: + 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:614: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_a47bdd78797d1119 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_648ac3e0c2b7cdff" hs_bindgen_648ac3e0c2b7cdff :: + 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:619: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_648ac3e0c2b7cdff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_958b6aba63952f20" hs_bindgen_958b6aba63952f20 :: + 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:646: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_958b6aba63952f20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_6f10bc161211f897" hs_bindgen_6f10bc161211f897 :: + 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:658: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_6f10bc161211f897 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_3bcb399e7ddba28b" hs_bindgen_3bcb399e7ddba28b :: + 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:664: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_3bcb399e7ddba28b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_b9501a4792ca07b6" hs_bindgen_b9501a4792ca07b6 :: + 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:683: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_b9501a4792ca07b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_1a2eceabae618352" hs_bindgen_1a2eceabae618352 :: + 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:716: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_1a2eceabae618352 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_69ba26b2ad95e21a" hs_bindgen_69ba26b2ad95e21a :: + 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:740: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_69ba26b2ad95e21a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_4facd56fd6194d83" hs_bindgen_4facd56fd6194d83 :: + 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:767: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_4facd56fd6194d83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_1606af6c3283c2cb" hs_bindgen_1606af6c3283c2cb :: + 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:786: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_1606af6c3283c2cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_9d7c03dc32888256" hs_bindgen_9d7c03dc32888256 :: + 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:809: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_9d7c03dc32888256 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_11cbc0b88c22ce34" hs_bindgen_11cbc0b88c22ce34 :: + 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:827: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_11cbc0b88c22ce34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_094940ff8a90461a" hs_bindgen_094940ff8a90461a :: + 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:833: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_094940ff8a90461a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_2bbbadebb01014a0" hs_bindgen_2bbbadebb01014a0 :: + 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:839: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_2bbbadebb01014a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_caf86aac5504de03" hs_bindgen_caf86aac5504de03 :: + 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:844: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_caf86aac5504de03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_a1a38325fb72400f" hs_bindgen_a1a38325fb72400f :: + 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:850: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_a1a38325fb72400f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_27c198258a868146" hs_bindgen_27c198258a868146 :: + 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:856: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_27c198258a868146 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_7c95e3ba97591048" hs_bindgen_7c95e3ba97591048 :: + 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:862: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_7c95e3ba97591048 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_287a24ff44466bae" hs_bindgen_287a24ff44466bae :: + 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:870: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_287a24ff44466bae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_e7048db4d1cb76d3" hs_bindgen_e7048db4d1cb76d3 :: + 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:880: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_e7048db4d1cb76d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_de1b38f8f12f5b7c" hs_bindgen_de1b38f8f12f5b7c :: + 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:893: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_de1b38f8f12f5b7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_f09152b1c92d600c" hs_bindgen_f09152b1c92d600c :: + 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:899: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_f09152b1c92d600c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_d26917a3de1dc47d" hs_bindgen_d26917a3de1dc47d :: + 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:904: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_d26917a3de1dc47d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_3b558463b25109f8" hs_bindgen_3b558463b25109f8 :: + 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:909: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_3b558463b25109f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_5b913f974196d821" hs_bindgen_5b913f974196d821 :: + 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:914: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_5b913f974196d821 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_b718e6203082bc0d" hs_bindgen_b718e6203082bc0d :: + 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:919: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_b718e6203082bc0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_a49868af3a18daf8" hs_bindgen_a49868af3a18daf8 :: + 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:924: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_a49868af3a18daf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_b676b5dbb915e4c2" hs_bindgen_b676b5dbb915e4c2 :: + 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:929: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_b676b5dbb915e4c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_957222c2de69dd7c" hs_bindgen_957222c2de69dd7c :: + 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:935: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_957222c2de69dd7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_02c24e01a274c856" hs_bindgen_02c24e01a274c856 :: + 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:940: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_02c24e01a274c856 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_56a0534cdc20b0d0" hs_bindgen_56a0534cdc20b0d0 :: + 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:945: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_56a0534cdc20b0d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_92db7e6c68f35c74" hs_bindgen_92db7e6c68f35c74 :: + 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:950: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_92db7e6c68f35c74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_cbc914302b8963c7" hs_bindgen_cbc914302b8963c7 :: + 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:955: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_cbc914302b8963c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_69279e4d4c1d23b6" hs_bindgen_69279e4d4c1d23b6 :: + 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:960: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_69279e4d4c1d23b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_f96ea994bc5e9ae1" hs_bindgen_f96ea994bc5e9ae1 :: + 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:967: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_f96ea994bc5e9ae1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_fbc6e71b7bc2b5b5" hs_bindgen_fbc6e71b7bc2b5b5 :: + 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:972: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_fbc6e71b7bc2b5b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_912f4aca52985aa5" hs_bindgen_912f4aca52985aa5 :: + 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:974: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_912f4aca52985aa5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_32b1570f870f9e76" hs_bindgen_32b1570f870f9e76 :: + 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:976: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_32b1570f870f9e76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_833d643e444d781a" hs_bindgen_833d643e444d781a :: + 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:978: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_833d643e444d781a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_c4b4b3c7d9274d54" hs_bindgen_c4b4b3c7d9274d54 :: + 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:979: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_c4b4b3c7d9274d54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_a2ab81295f3def04" hs_bindgen_a2ab81295f3def04 :: + 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:981: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_a2ab81295f3def04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_f77714cf8b8c724c" hs_bindgen_f77714cf8b8c724c :: + 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:982: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_f77714cf8b8c724c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_1443c95b7922eae7" hs_bindgen_1443c95b7922eae7 :: + 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:984: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_1443c95b7922eae7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_b251114b491c2720" hs_bindgen_b251114b491c2720 :: + 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:985: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_b251114b491c2720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_fd4937f6ff076c93" hs_bindgen_fd4937f6ff076c93 :: + 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:986: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_fd4937f6ff076c93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_9b5f59386cd7bf2a" hs_bindgen_9b5f59386cd7bf2a :: + 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:989: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_9b5f59386cd7bf2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_cd63b80d8d340146" hs_bindgen_cd63b80d8d340146 :: + 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:992: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_cd63b80d8d340146 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_6eaa23b6055eb515" hs_bindgen_6eaa23b6055eb515 :: + 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:999: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_6eaa23b6055eb515 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_7e3ef9ee0fff5ab5" hs_bindgen_7e3ef9ee0fff5ab5 :: + 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:1006: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_7e3ef9ee0fff5ab5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_3de62ced50317c56" hs_bindgen_3de62ced50317c56 :: + 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:1011: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_3de62ced50317c56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_434c70b8ec177dfb" hs_bindgen_434c70b8ec177dfb :: + 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:1015: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_434c70b8ec177dfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_72d76231795e6145" hs_bindgen_72d76231795e6145 :: + 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:1017: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_72d76231795e6145 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_0bf3425da94a07e9" hs_bindgen_0bf3425da94a07e9 :: + 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:1018: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_0bf3425da94a07e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_a8168ba742d8ea96" hs_bindgen_a8168ba742d8ea96 :: + 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:1020: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_a8168ba742d8ea96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_4893db1b2d65bc73" hs_bindgen_4893db1b2d65bc73 :: + 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:1022: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_4893db1b2d65bc73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_33c7c742c3f72f58" hs_bindgen_33c7c742c3f72f58 :: + 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:1025: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_33c7c742c3f72f58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_3256bea9937c59ee" hs_bindgen_3256bea9937c59ee :: + 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:1027: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_3256bea9937c59ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_5a230c08c75cfcc7" hs_bindgen_5a230c08c75cfcc7 :: + 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:1034: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_5a230c08c75cfcc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_8647e3bb2bc8d993" hs_bindgen_8647e3bb2bc8d993 :: + 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:1041: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_8647e3bb2bc8d993 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_dc58ddf4343e3687" hs_bindgen_dc58ddf4343e3687 :: + 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:1046: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_dc58ddf4343e3687 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_0112ee51587b8036" hs_bindgen_0112ee51587b8036 :: + 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:1051: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_0112ee51587b8036 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_e141dade117a5cf8" hs_bindgen_e141dade117a5cf8 :: + 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:1069: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_e141dade117a5cf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_05d0f496bee6f067" hs_bindgen_05d0f496bee6f067 :: + 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:1080: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_05d0f496bee6f067 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_0256308b3f4b6da1" hs_bindgen_0256308b3f4b6da1 :: + 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:1096: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_0256308b3f4b6da1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_199665af64d0abcc" hs_bindgen_199665af64d0abcc :: + 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:1100: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_199665af64d0abcc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_6e86d5116ce42445" hs_bindgen_6e86d5116ce42445 :: + 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:1103: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_6e86d5116ce42445 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_01d35e5778139ff1" hs_bindgen_01d35e5778139ff1 :: + 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:1105: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_01d35e5778139ff1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_a431fba88bef144c" hs_bindgen_a431fba88bef144c :: + 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:1107: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_a431fba88bef144c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_444fb62064165b58" hs_bindgen_444fb62064165b58 :: + 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:1109: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_444fb62064165b58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_ae5c28c8b08fa2dd" hs_bindgen_ae5c28c8b08fa2dd :: + 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:1111: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_ae5c28c8b08fa2dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_0bde41b211664ae7" hs_bindgen_0bde41b211664ae7 :: + 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:1131: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_0bde41b211664ae7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_86e5806b73d6f2c4" hs_bindgen_86e5806b73d6f2c4 :: + 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:1153: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_86e5806b73d6f2c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_8baf8a1f043df06b" hs_bindgen_8baf8a1f043df06b :: + 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:1161: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_8baf8a1f043df06b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_021de7171c4fa4f3" hs_bindgen_021de7171c4fa4f3 :: + 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:1166: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_021de7171c4fa4f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_3c7ffc8d64e76082" hs_bindgen_3c7ffc8d64e76082 :: + 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:1178: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_3c7ffc8d64e76082 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_1a4d87f4162bb6a7" hs_bindgen_1a4d87f4162bb6a7 :: + 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:1183: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_1a4d87f4162bb6a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_c267d030b9011639" hs_bindgen_c267d030b9011639 :: + 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:1188: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_c267d030b9011639 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_304b303c048cb787" hs_bindgen_304b303c048cb787 :: + 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:1190: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_304b303c048cb787 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_83a1522f0b10131e" hs_bindgen_83a1522f0b10131e :: + 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:1197: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_83a1522f0b10131e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_16eb9b065af80f24" hs_bindgen_16eb9b065af80f24 :: + 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:1212: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_16eb9b065af80f24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_452727cf3f078478" hs_bindgen_452727cf3f078478 :: + 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:1227: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_452727cf3f078478 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_c4fa2d3cbb89b781" hs_bindgen_c4fa2d3cbb89b781 :: + 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:1244: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_c4fa2d3cbb89b781 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_ec8537cfd7ff1915" hs_bindgen_ec8537cfd7ff1915 :: + 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:1259: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_ec8537cfd7ff1915 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_c44d9b7d33c67dee" hs_bindgen_c44d9b7d33c67dee :: + 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:1275: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_c44d9b7d33c67dee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_26de67d9ad67fc39" hs_bindgen_26de67d9ad67fc39 :: + 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:1290: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_26de67d9ad67fc39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_e8b9b27861b66271" hs_bindgen_e8b9b27861b66271 :: + 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:1301: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_e8b9b27861b66271 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_2fd48d6122f4cc31" hs_bindgen_2fd48d6122f4cc31 :: + 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:1303: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_2fd48d6122f4cc31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_7711850cde1b35de" hs_bindgen_7711850cde1b35de :: + 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:1305: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_7711850cde1b35de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_22190b27ab96e9cc" hs_bindgen_22190b27ab96e9cc :: + 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:1310: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_22190b27ab96e9cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_3a9ade93cbf77fab" hs_bindgen_3a9ade93cbf77fab :: + 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:1315: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_3a9ade93cbf77fab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_83f44b05ce944f8e" hs_bindgen_83f44b05ce944f8e :: + 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:1317: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_83f44b05ce944f8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_db65dd444f41a9df" hs_bindgen_db65dd444f41a9df :: + 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:1322: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_db65dd444f41a9df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_173a14e54603c83e" hs_bindgen_173a14e54603c83e :: + 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:1324: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_173a14e54603c83e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_2c916f86511654a4" hs_bindgen_2c916f86511654a4 :: + 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:1327: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_2c916f86511654a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_386c189d191fc42f" hs_bindgen_386c189d191fc42f :: + 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:1332: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_386c189d191fc42f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_66a48df4ffb14e2f" hs_bindgen_66a48df4ffb14e2f :: + 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:1337: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_66a48df4ffb14e2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_8ebb6a423618fae8" hs_bindgen_8ebb6a423618fae8 :: + 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:1339: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_8ebb6a423618fae8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_71bdd68902f65983" hs_bindgen_71bdd68902f65983 :: + 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:1344: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_71bdd68902f65983 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_189d7d0c40a291cb" hs_bindgen_189d7d0c40a291cb :: + 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:1346: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_189d7d0c40a291cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_944b16c5345799a9" hs_bindgen_944b16c5345799a9 :: + 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:1349: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_944b16c5345799a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_faf8f294495e3cac" hs_bindgen_faf8f294495e3cac :: + 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:1351: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_faf8f294495e3cac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_95ff3775f4830cd3" hs_bindgen_95ff3775f4830cd3 :: + 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:1353: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_95ff3775f4830cd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_73358f5c16721695" hs_bindgen_73358f5c16721695 :: + 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:1355: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_73358f5c16721695 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_a052034abdbc3e4b" hs_bindgen_a052034abdbc3e4b :: + 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:1357: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_a052034abdbc3e4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_77e6d948ad7747a2" hs_bindgen_77e6d948ad7747a2 :: + 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:1360: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_77e6d948ad7747a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_0c7c05df7c3c360d" hs_bindgen_0c7c05df7c3c360d :: + 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:1362: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_0c7c05df7c3c360d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_0d904e9bfab230de" hs_bindgen_0d904e9bfab230de :: + 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:1365: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_0d904e9bfab230de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_b5e8b3ca3228c419" hs_bindgen_b5e8b3ca3228c419 :: + 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:1367: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_b5e8b3ca3228c419 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_5e203eeeb91cfd9b" hs_bindgen_5e203eeeb91cfd9b :: + 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:1373: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_5e203eeeb91cfd9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_ec04fdf0a1e9b17a" hs_bindgen_ec04fdf0a1e9b17a :: + 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:1376: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_ec04fdf0a1e9b17a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_1494c4dcbe384e80" hs_bindgen_1494c4dcbe384e80 :: + 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:1379: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_1494c4dcbe384e80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_43bce242b98402d8" hs_bindgen_43bce242b98402d8 :: + 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:1382: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_43bce242b98402d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_f13e2fb1a71e9c1f" hs_bindgen_f13e2fb1a71e9c1f :: + 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:1384: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_f13e2fb1a71e9c1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_887b81f55fa1e49b" hs_bindgen_887b81f55fa1e49b :: + 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:1386: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_887b81f55fa1e49b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_0b7b4e780b5f0c1a" hs_bindgen_0b7b4e780b5f0c1a :: + 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:1388: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_0b7b4e780b5f0c1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_262c8fc56e81141c" hs_bindgen_262c8fc56e81141c :: + 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:1403: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_262c8fc56e81141c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_8e1536bf9df4f9c3" hs_bindgen_8e1536bf9df4f9c3 :: + 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:1417: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_8e1536bf9df4f9c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_f1a054eddf433f58" hs_bindgen_f1a054eddf433f58 :: + 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:1435: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_f1a054eddf433f58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_8ee9badecb36534a" hs_bindgen_8ee9badecb36534a :: + 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:1450: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_8ee9badecb36534a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_73413c28cc89ec20" hs_bindgen_73413c28cc89ec20 :: + 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:1456: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_73413c28cc89ec20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_3678a521965bfc05" hs_bindgen_3678a521965bfc05 :: + 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:1458: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_3678a521965bfc05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_a544412106db93fc" hs_bindgen_a544412106db93fc :: + 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:1460: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_a544412106db93fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_6d9603a47b353986" hs_bindgen_6d9603a47b353986 :: + 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:1462: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_6d9603a47b353986 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_5ee501139a0db41d" hs_bindgen_5ee501139a0db41d :: + 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:1468: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_5ee501139a0db41d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_925573ebfe67afbf" hs_bindgen_925573ebfe67afbf :: + 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:1470: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_925573ebfe67afbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_01ddbc887279e55d" hs_bindgen_01ddbc887279e55d :: + 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:1472: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_01ddbc887279e55d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_268bc6ae2ac23640" hs_bindgen_268bc6ae2ac23640 :: + 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:1474: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_268bc6ae2ac23640 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_998172323dba98e8" hs_bindgen_998172323dba98e8 :: + 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:1480: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_998172323dba98e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_2f586dfccd1894c5" hs_bindgen_2f586dfccd1894c5 :: + 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:1482: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_2f586dfccd1894c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_0362b51b86961ef2" hs_bindgen_0362b51b86961ef2 :: + 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:1484: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_0362b51b86961ef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f899dac7b735aabe" hs_bindgen_f899dac7b735aabe :: + 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:1486: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_f899dac7b735aabe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_93d71ba532e8f794" hs_bindgen_93d71ba532e8f794 :: + 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:1492: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_93d71ba532e8f794 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_36edeb851f585f1c" hs_bindgen_36edeb851f585f1c :: + 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:1494: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_36edeb851f585f1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_c67364e401a7c19d" hs_bindgen_c67364e401a7c19d :: + 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:1496: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_c67364e401a7c19d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f94fc06900803269" hs_bindgen_f94fc06900803269 :: + 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:1498: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_f94fc06900803269 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_e86a9a7eae8dc5c7" hs_bindgen_e86a9a7eae8dc5c7 :: + 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:1504: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_e86a9a7eae8dc5c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_fece9d76d9c45d43" hs_bindgen_fece9d76d9c45d43 :: + 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:1506: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_fece9d76d9c45d43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_4c62282587249560" hs_bindgen_4c62282587249560 :: + 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:1509: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_4c62282587249560 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_14d036818bb4d2d4" hs_bindgen_14d036818bb4d2d4 :: + 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:1512: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_14d036818bb4d2d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_3fdcfa55dd161dff" hs_bindgen_3fdcfa55dd161dff :: + 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:1518: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_3fdcfa55dd161dff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_a40bec7bd070a71b" hs_bindgen_a40bec7bd070a71b :: + 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:1521: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_a40bec7bd070a71b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_8d141bc4803af1b0" hs_bindgen_8d141bc4803af1b0 :: + 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:1524: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_8d141bc4803af1b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_65cff277b617ba23" hs_bindgen_65cff277b617ba23 :: + 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:1527: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_65cff277b617ba23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_0704d46d90ac7da5" hs_bindgen_0704d46d90ac7da5 :: + 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:1530: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_0704d46d90ac7da5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_f3b95eeb052fa361" hs_bindgen_f3b95eeb052fa361 :: + 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:1533: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_f3b95eeb052fa361 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_e67c13dbb5289ef4" hs_bindgen_e67c13dbb5289ef4 :: + 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:1536: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_e67c13dbb5289ef4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_caeffa140f3d5f14" hs_bindgen_caeffa140f3d5f14 :: + 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:1540: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_caeffa140f3d5f14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_05f0253ca86ad072" hs_bindgen_05f0253ca86ad072 :: + 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:1544: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_05f0253ca86ad072 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_097c7e58ac62ee94" hs_bindgen_097c7e58ac62ee94 :: + 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:1547: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_097c7e58ac62ee94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_3ab5863cef27ea49" hs_bindgen_3ab5863cef27ea49 :: + 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:1554: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_3ab5863cef27ea49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_440e324835561056" hs_bindgen_440e324835561056 :: + 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:1562: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_440e324835561056 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ae005d5e8f643f66" hs_bindgen_ae005d5e8f643f66 :: + 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:1567: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_ae005d5e8f643f66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_c1f69966d90b66da" hs_bindgen_c1f69966d90b66da :: + 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:1570: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_c1f69966d90b66da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_0dd7c0b1243ad653" hs_bindgen_0dd7c0b1243ad653 :: + 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:1573: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_0dd7c0b1243ad653 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_a5ccbc7a59a89f2b" hs_bindgen_a5ccbc7a59a89f2b :: + 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:1586: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_a5ccbc7a59a89f2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_3e5e23de62e747df" hs_bindgen_3e5e23de62e747df :: + 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:1591: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_3e5e23de62e747df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_ccf98a3a799505a0" hs_bindgen_ccf98a3a799505a0 :: + 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:1594: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_ccf98a3a799505a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_379f8b54c9430bc5" hs_bindgen_379f8b54c9430bc5 :: + 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:1597: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_379f8b54c9430bc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_cba9ce16bf3559d0" hs_bindgen_cba9ce16bf3559d0 :: + 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:1609: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_cba9ce16bf3559d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_cfe74b2bac91e44f" hs_bindgen_cfe74b2bac91e44f :: + 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:1614: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_cfe74b2bac91e44f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_fac3a8f4168402bc" hs_bindgen_fac3a8f4168402bc :: + 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:1616: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_fac3a8f4168402bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_7a2f91f1ea47eac9" hs_bindgen_7a2f91f1ea47eac9 :: + 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:1618: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_7a2f91f1ea47eac9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_56321687600a374f" hs_bindgen_56321687600a374f :: + 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:1621: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_56321687600a374f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_558d965ed16a9bd6" hs_bindgen_558d965ed16a9bd6 :: + 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:1629: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_558d965ed16a9bd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_56bca7c9166d7bb0" hs_bindgen_56bca7c9166d7bb0 :: + 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:1637: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_56bca7c9166d7bb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_f08dabd5200efc11" hs_bindgen_f08dabd5200efc11 :: + 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:1639: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_f08dabd5200efc11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_7e38ca982a8a614b" hs_bindgen_7e38ca982a8a614b :: + 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:1640: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_7e38ca982a8a614b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_9ea31a9f7c880214" hs_bindgen_9ea31a9f7c880214 :: + 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:1648: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_9ea31a9f7c880214 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_fda1dbc7d3bd31bd" hs_bindgen_fda1dbc7d3bd31bd :: + 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:1653: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_fda1dbc7d3bd31bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_3a8fe7bd82e1ef81" hs_bindgen_3a8fe7bd82e1ef81 :: + 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:1655: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_3a8fe7bd82e1ef81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_686cbd4606841402" hs_bindgen_686cbd4606841402 :: + 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:1658: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_686cbd4606841402 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_045a35990a886c49" hs_bindgen_045a35990a886c49 :: + 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:1660: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_045a35990a886c49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_5be7d4b99fc6e9b1" hs_bindgen_5be7d4b99fc6e9b1 :: + 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:1663: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_5be7d4b99fc6e9b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_7193a221c54b8093" hs_bindgen_7193a221c54b8093 :: + 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:1677: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_7193a221c54b8093 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_0249ea176817c198" hs_bindgen_0249ea176817c198 :: + 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:1682: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_0249ea176817c198 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_4e6a213c4969c97c" hs_bindgen_4e6a213c4969c97c :: + 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:1685: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_4e6a213c4969c97c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_9f81f95b5a174f85" hs_bindgen_9f81f95b5a174f85 :: + 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:1690: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_9f81f95b5a174f85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_588ca2bae52c0af9" hs_bindgen_588ca2bae52c0af9 :: + 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:1694: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_588ca2bae52c0af9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_17bafd3be657bb48" hs_bindgen_17bafd3be657bb48 :: + 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:1707: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_17bafd3be657bb48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_bc65a206c0c1847f" hs_bindgen_bc65a206c0c1847f :: + 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:1712: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_bc65a206c0c1847f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_a7850beb5849ca68" hs_bindgen_a7850beb5849ca68 :: + 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:1715: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_a7850beb5849ca68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_a5af4731a51d8d26" hs_bindgen_a5af4731a51d8d26 :: + 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:1720: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_a5af4731a51d8d26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_c84011fd337a1553" hs_bindgen_c84011fd337a1553 :: + 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:1733: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_c84011fd337a1553 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_92c8a555750a5ae6" hs_bindgen_92c8a555750a5ae6 :: + 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:1740: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_92c8a555750a5ae6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_34dfcb210c7b028c" hs_bindgen_34dfcb210c7b028c :: + 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:1755: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_34dfcb210c7b028c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_522f7058f1871998" hs_bindgen_522f7058f1871998 :: + 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:1770: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_522f7058f1871998 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_63e77e42d8d871f2" hs_bindgen_63e77e42d8d871f2 :: + 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:1771: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_63e77e42d8d871f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_20d8bc41bcfce817" hs_bindgen_20d8bc41bcfce817 :: + 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:1776: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_20d8bc41bcfce817 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_28b0713ed1d44525" hs_bindgen_28b0713ed1d44525 :: + 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:1778: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_28b0713ed1d44525 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_ff4d0da11ea8a5a3" hs_bindgen_ff4d0da11ea8a5a3 :: + 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:1781: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_ff4d0da11ea8a5a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_e7bdc083f17c0048" hs_bindgen_e7bdc083f17c0048 :: + 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:1782: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_e7bdc083f17c0048 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_3d3ce9887313952b" hs_bindgen_3d3ce9887313952b :: + 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:1784: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_3d3ce9887313952b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_3c669eec7f9179b0" hs_bindgen_3c669eec7f9179b0 :: + 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:1785: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_3c669eec7f9179b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_f9555f69a033e359" hs_bindgen_f9555f69a033e359 :: + 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:1788: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_f9555f69a033e359 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_53e10c50334173e7" hs_bindgen_53e10c50334173e7 :: + 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:1790: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_53e10c50334173e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_a74467ecc7e22844" hs_bindgen_a74467ecc7e22844 :: + 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:1791: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_a74467ecc7e22844 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_5c77025c771813d1" hs_bindgen_5c77025c771813d1 :: + 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:1792: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_5c77025c771813d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_56734b939e7e47c5" hs_bindgen_56734b939e7e47c5 :: + 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:1794: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_56734b939e7e47c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_6363aabbf64bca10" hs_bindgen_6363aabbf64bca10 :: + 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:1797: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_6363aabbf64bca10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_5117dbee224ef2d3" hs_bindgen_5117dbee224ef2d3 :: + 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:1799: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_5117dbee224ef2d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_93f5f7aaef3808f4" hs_bindgen_93f5f7aaef3808f4 :: + 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:1802: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_93f5f7aaef3808f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_40fc4ca2300861a2" hs_bindgen_40fc4ca2300861a2 :: + 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:1806: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_40fc4ca2300861a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_64d120d3751cdf06" hs_bindgen_64d120d3751cdf06 :: + 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:1809: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_64d120d3751cdf06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_79ec0616d9974348" hs_bindgen_79ec0616d9974348 :: + 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:1812: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_79ec0616d9974348 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_174cee737e87cc1a" hs_bindgen_174cee737e87cc1a :: + 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:1828: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_174cee737e87cc1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_7213d96534069fac" hs_bindgen_7213d96534069fac :: + 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:1834: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_7213d96534069fac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_0d4978a1d3deb8ad" hs_bindgen_0d4978a1d3deb8ad :: + 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: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_0d4978a1d3deb8ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_e7960a6b90240168" hs_bindgen_e7960a6b90240168 :: + 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:1860: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_e7960a6b90240168 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_0b6210a80a8f09d4" hs_bindgen_0b6210a80a8f09d4 :: + 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:1868: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_0b6210a80a8f09d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_88e58af65f22f499" hs_bindgen_88e58af65f22f499 :: + 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: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_88e58af65f22f499 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_b354f1a971bcf266" hs_bindgen_b354f1a971bcf266 :: + 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: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_b354f1a971bcf266 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_632c13a7ac5609a0" hs_bindgen_632c13a7ac5609a0 :: + 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: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_632c13a7ac5609a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_0a5d4c63707e8a40" hs_bindgen_0a5d4c63707e8a40 :: + 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:1885: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_0a5d4c63707e8a40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_6a93eca52088206c" hs_bindgen_6a93eca52088206c :: + 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_6a93eca52088206c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_f3236d1e6a55b72a" hs_bindgen_f3236d1e6a55b72a :: + 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:1912: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_f3236d1e6a55b72a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_454e1938f5e9bbd5" hs_bindgen_454e1938f5e9bbd5 :: + 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:1920: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_454e1938f5e9bbd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_a794a60712aaaefc" hs_bindgen_a794a60712aaaefc :: + 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:1930: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_a794a60712aaaefc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_1bcfb9eb3a04f076" hs_bindgen_1bcfb9eb3a04f076 :: + 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:1949: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_1bcfb9eb3a04f076 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_14d3c628eaa4133a" hs_bindgen_14d3c628eaa4133a :: + 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:1956: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_14d3c628eaa4133a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_441eee69b19aee29" hs_bindgen_441eee69b19aee29 :: + 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:1962: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_441eee69b19aee29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_767ac7a4b995b1da" hs_bindgen_767ac7a4b995b1da :: + 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:1968: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_767ac7a4b995b1da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_041305981eb32d48" hs_bindgen_041305981eb32d48 :: + 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:1981: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_041305981eb32d48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_18556d6b0249b98c" hs_bindgen_18556d6b0249b98c :: + 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:1989: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_18556d6b0249b98c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_21aa92ee7fe8c2d2" hs_bindgen_21aa92ee7fe8c2d2 :: + 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:1998: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_21aa92ee7fe8c2d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_2463d9bcfbb82060" hs_bindgen_2463d9bcfbb82060 :: + 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_2463d9bcfbb82060 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_a12c8c9a09f6d820" hs_bindgen_a12c8c9a09f6d820 :: + 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:2020: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_a12c8c9a09f6d820 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_9c936d2d8a749f20" hs_bindgen_9c936d2d8a749f20 :: + 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:2027: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_9c936d2d8a749f20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_5cb83269d01b0bcf" hs_bindgen_5cb83269d01b0bcf :: + 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:2030: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_5cb83269d01b0bcf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_f97bf12d7987585c" hs_bindgen_f97bf12d7987585c :: + 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:2033: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_f97bf12d7987585c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_9056c97c626e7bc8" hs_bindgen_9056c97c626e7bc8 :: + 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:2045: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_9056c97c626e7bc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_c9e617058f92f5d9" hs_bindgen_c9e617058f92f5d9 :: + 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:2053: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_c9e617058f92f5d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_0b0a4578968ae4f7" hs_bindgen_0b0a4578968ae4f7 :: + 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:2068: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_0b0a4578968ae4f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_24c1a104fdfe99f1" hs_bindgen_24c1a104fdfe99f1 :: + 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:2087: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_24c1a104fdfe99f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_4f21b87d803e4543" hs_bindgen_4f21b87d803e4543 :: + 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:2103: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_4f21b87d803e4543 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_4936cd8f0d9db2ef" hs_bindgen_4936cd8f0d9db2ef :: + 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:2130: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_4936cd8f0d9db2ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_606d1237999bddc7" hs_bindgen_606d1237999bddc7 :: + 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:2148: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_606d1237999bddc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_d40faa2320bfb7bb" hs_bindgen_d40faa2320bfb7bb :: + 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:2169: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_d40faa2320bfb7bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_273901fd220dbb3b" hs_bindgen_273901fd220dbb3b :: + 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:2190: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_273901fd220dbb3b diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/Safe.hs new file mode 100644 index 00000000..f7351ccc --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/Safe.hs @@ -0,0 +1,12609 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_5_0.Safe where + +import Botan.Bindings.Generated.Botan_3_5_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_1fd26e3ae1b2bd95 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_30103b241a7ee848 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_55d87facfc7b5e8d (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_31563a42dd066920 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_401419d333b98bc9 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_32cbce4a01fe11f4 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_a5f10b31d12c5b76 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_e96dadf752560f6b (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_02dd39e5a1f5fafd (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_fe3084069ecc0e7b (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1127bd0b48dd7f71 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_556a9db272d632b5 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6038706fbd3823e (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4a31eb0d5f6dcd14 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3942c7874c2226c7 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9857690829f27c95 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8353676a1c7d86d2 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f58eb49eeeb8593d (" + , " 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_4add635b5b5be3b3 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ec85e80ec3c337a2 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_88dcaf35ee4e6773 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8c4a8135963ed904 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c6e814b8b6ae911 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d1b6e2ffa27868f6 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9f842a89c82a27b4 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2325be9a0c944217 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2da338ac3dc0cb28 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_28d28e9f4aeb7c9a (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8da84dd69b8b29d6 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1166f2186fac3a37 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_df845986de7c24ce (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_b3400ecf5b437ce5 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c3ffffa10cf49da2 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_98dcd7d3c95dbeaa (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_77aec99bf8a10bbf (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ce71f43412b1e32 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5a992bbefd4c275e (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_39ab4d8872e4ca23 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_56e600a0a078f158 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_367177ba50aacfb2 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_0a069078b5136a44 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6dac5729e5c4e67c (" + , " 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_d8bbce6cbe865bad (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c755cc3388d18639 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27d168cb41e3a20f (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c12dec9e19b91a71 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_654235052fac4262 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c20431219db7912d (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_145d9c582777ab7b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_eec826893de77aaf (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_f9bc8189868e6515 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f71c974cf991b1b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_da618943f9739157 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3cdd3fbedc582b2 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fb0f73a669760ccc (" + , " 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_cb7466a6f5750d9f (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_78244a0a184bbb56 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_cee8e1098a5e4595 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_99019f5141b1edc4 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_484dc8e84406f183 (" + , " 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_02b77acc3d1ee5f8 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_6eba8f711a4ca0c3 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c33135fbb4a7647c (" + , " 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_768eab9fe2c01b51 (" + , " 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_68f395b4fed56bdb (" + , " 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_cdd66b753824de4a (" + , " 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_3d3b961c2a2ea474 (" + , " 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_5e72115d9c57966a (" + , " 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_5fcfb9ebb7b15788 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8d2e626fbbaf17a8 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f815c87935441a01 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_18ec67526a82ef3c (" + , " 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_a70f46d39e41feb9 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_b0b8020220394cce (" + , " 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_bdf0de54a0c00d2b (" + , " 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_7f72e623f60c146f (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8e1d49bd185db7f5 (" + , " 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_0bbbbe833fbf0a7d (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_a0c4abf38b11d82e (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4b8e5b1ab0878355 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6fdbf1dcacf90be (" + , " 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_5e110e8fd711652f (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_753a024c23157a82 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d560e8178a2f37e4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cca6187d579e9df2 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d0196c3fb0425fea (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_df5e84bd743ec453 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8c0aa6cccdd29b26 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f632ada61a9cf967 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50c7fae8818282b7 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d0d9df3f89722e8 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebb5186676fa5f39 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_9db0d92d4ed243a5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_6f01265990a348a2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_6d3398ee47539fb8 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_b1f6a05f6cf452b9 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_f8ee21e0fb59af02 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_4cb71aefeb01fbe3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92f5b88ec49a51ac (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_71b39583d663a87a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ec6d3c692e32a657 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_988aa139a54e043e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e8f49a32d810ff89 (" + , " 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_3702e35109095dbe (" + , " 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_da520a55fdea4fc0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2bde8554c2d06a6e (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd9b6e0cdc64647e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eaffaad4060c2b25 (" + , " 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_fb1e1d4f48c01acc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e3320a56b72f2394 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_35aa817063743106 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b45f02e3749744e6 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5e0d81416146b46d (" + , " 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_7e0563787b43de26 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_825dc1e9513c1e25 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0585f191da18a752 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_926cd08953d898b4 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d8503c2cff35523c (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78d7449fcd5a8ba6 (" + , " 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_8c1bad913138ada1 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7840410542570e92 (" + , " 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_eac9d8595e2d0645 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2b93cbda40f4f2a (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a2b437e464b37210 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d62a57b7e48c1651 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_903b0b2e34eeab15 (" + , " 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_9e5375035d2f5b35 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_28387e0236bcecc0 (" + , " 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_74f464f8e300276a (" + , " 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_2ce1d01d46a87413 (" + , " 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_e9feb9149165f1c0 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2125bfa9c4d9e5b3 (" + , " 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_0aa596547a5cced8 (" + , " 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_0178594d86259f71 (" + , " 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_71acef7221d91329 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_836091fd39569f39 (" + , " 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_49d25c72dee17529 (" + , " 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_d28985cbeb677a24 (" + , " 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_fe0ddf5f756dc9be (" + , " 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_62b6f1530dffab36 (" + , " 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_368d2c24464a470a (" + , " 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_e3ca3bf2e376329f (" + , " 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_c826d34ca090df85 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_946ef9c890658b0e (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fb8a1cbd4bd6d2d7 (" + , " 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_baea9329aa86e3b9 (" + , " 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_15c1d57ad7631cde (" + , " 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_6b20175651c2ea11 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_88c0406d8458e8b0 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7ca2612eaa7126d9 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_37a9e68b09b30941 (" + , " 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_4e16ca1e6c8ff679 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d1fe09da54452880 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d099e5c003145eb8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7c763c920dacfb58 (" + , " 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_7e65dbe6c07088bd (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a32e4a5252886c54 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d9614618b3fabe2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3620d06e1d3eea5e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7b2abefe304c9816 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fb083d53bf7eb4d8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_734dc8ed67641a8b (" + , " 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_4ca404966d1af6ba (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b44da639ba303af5 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a37f7fafc9563aca (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ed24919b2426b4d (" + , " 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_e15643b5b16e0b6a (" + , " 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_8af98b8fafb9a7b2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_465b14ab18939f0a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4d3f74b2d5918837 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c226fd82ca707ca1 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8c2874a56343d0bf (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1b872ff1a0e59037 (" + , " 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_b0144f7f1c939462 (" + , " 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_c880f165b565fd4f (" + , " 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_26fc0bcd6fdfa6c8 (" + , " 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_8054a2c94de0b318 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ea994b6346c6bb90 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f37e4f22bcf33ef0 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ab2fc87dd526aa21 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2810b2254ccd5cc7 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e6e798fd4e6208ae (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98f2c7598e3d3b61 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d50b1e55e727b77c (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5e6caf41f0b66e21 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8a4d8277e76ef3bd (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8e56ad641b583ce9 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1cc01b7d14dc1a24 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a9c6ad1a1c62691b (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3750f75d249d4a5d (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4603bbeca1bcc6b8 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18e34fedcdddbad8 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8928d5d178ad1aae (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a7efcb7277414db (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9016d033a9a84205 (" + , " 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_7e0f7b8d48aac64a (" + , " 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_3de964ca042186dc (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_5a86a633fe879ff0 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e16c1c3b44390533 (" + , " 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_dbec57747fd74654 (" + , " 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_87ed0fb781dc08b0 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c0881ebe6950d8f8 (" + , " 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_520f975492011606 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b2b89b7e1ac31532 (" + , " 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_8640669863acde97 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3fa4274a9bded4f9 (" + , " 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_a1fa648f447861f4 (" + , " 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_d76923b1b5591d06 (" + , " 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_c51dd10ebbe60412 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5130ebfdd372f8ce (" + , " 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_3171dfaf8af9f3a3 (" + , " 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_368ea316a5875ed0 (" + , " 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_5fec30ef05dd7851 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b79a8b225c729a1d (" + , " 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_4aabf76fa14051a2 (" + , " 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_15fc8730770cb6e7 (" + , " 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_a7208e43c4300e87 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_65970b6fde52e800 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bbf9402721ece5d6 (" + , " 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_6808e9b2bd15e511 (" + , " 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_99cc0201bfe3c051 (" + , " 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_e06f884bfc21dcfb (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_aab4378c01526be3 (" + , " 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_b516155b409f0514 (" + , " 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_88245522c9a73ba6 (" + , " 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_9cb81c80cd16c90d (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4cfbefc3a2381c74 (" + , " 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_f9eea002aaaf26f6 (" + , " 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_4e370704b4372ca8 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_011b04b659c966d5 (" + , " 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_0ee42c56126e8b8a (" + , " 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_3c06d72337357132 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6ebd9ac5ff3b119a (" + , " 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_35560b380bdbf29a (" + , " 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_50c53897e0613994 (" + , " 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_2af67dfb7f230438 (" + , " 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_d906f9ff5bba388f (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5f08a65c9cf8db75 (" + , " 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_d3e8a4fcae09b3d0 (" + , " 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_144b9cf0c84d59ec (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6c7c2c68c15b2762 (" + , " 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_3e5e98c4b93f438c (" + , " 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_4baf4293da5a14e6 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5afe1a6eb5afeea1 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2ad0de1ef1d02ad6 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bfa682a8b3cacf37 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7820bd1894d4fedb (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2b95f9694e724f5 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_84aa7038e0b63902 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eb42597003b87073 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6a61e23c0236173f (" + , " 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_1996fcd46b84da96 (" + , " 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_7b3ba4f34f3f55fb (" + , " 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_d223cfeaf53ae8c3 (" + , " 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_8b81b2537302b35a (" + , " 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_5086b73fb5f21e0d (" + , " 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_1af62e16db0f5f94 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e99460c6b299e1ca (" + , " 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_c156e834e3aa530f (" + , " 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_c073ea120c23fda6 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9a1d50560d9f1980 (" + , " 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_b073abbf8a09693d (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b58ea676ae0119d7 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_725266f2deab361d (" + , " 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_49844cc15e749b3a (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_dfc88e4d13ba2739 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b895404ff198e489 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_068115897336b4be (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0e508e281eabeb9e (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5cb203770a048b11 (" + , " 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_65e4bae4e1dc8297 (" + , " 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_776efb1c317054da (" + , " 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_abe5a199aa1b0588 (" + , " 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_98dc130dabf89819 (" + , " 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_27990be89f989dfb (" + , " 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_016c144e536b2cd9 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d363ebc87f5a95c2 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5ec0ff9d528ceadd (" + , " 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_d7d793db507eba2a (" + , " 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_71476619c3bf9ed4 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bec7a8df66dec7d0 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1a6f4d5084b2d51f (" + , " 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_5dc5a07692b3c660 (" + , " 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_56ae5df61ed32f16 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e42cd49ef6c3e5ab (" + , " 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_0100c49c2d8096cb (" + , " 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_c8f872974612c8b8 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_3a6b2aade6eec1fc (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c540e916d72a9f46 (" + , " 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_4ef66f43aec56f34 (" + , " 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_f3f7ac6693eb0faf (" + , " 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_572dbe35a2994c69 (" + , " 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_0f5f38defbc5e6ac (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_32f1f795a3ab9ff3 (" + , " 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_8f600f3165b857fc (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_1fd26e3ae1b2bd95" hs_bindgen_1fd26e3ae1b2bd95 :: + 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:158: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_1fd26e3ae1b2bd95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_30103b241a7ee848" hs_bindgen_30103b241a7ee848 :: + 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:167: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_30103b241a7ee848 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_55d87facfc7b5e8d" hs_bindgen_55d87facfc7b5e8d :: + 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:174:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_55d87facfc7b5e8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_31563a42dd066920" hs_bindgen_31563a42dd066920 :: + 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:180: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_31563a42dd066920 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_401419d333b98bc9" hs_bindgen_401419d333b98bc9 :: + 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:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_401419d333b98bc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_32cbce4a01fe11f4" hs_bindgen_32cbce4a01fe11f4 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_32cbce4a01fe11f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_a5f10b31d12c5b76" hs_bindgen_a5f10b31d12c5b76 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:195:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_a5f10b31d12c5b76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_e96dadf752560f6b" hs_bindgen_e96dadf752560f6b :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:200:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_e96dadf752560f6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_02dd39e5a1f5fafd" hs_bindgen_02dd39e5a1f5fafd :: + 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:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_02dd39e5a1f5fafd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_fe3084069ecc0e7b" hs_bindgen_fe3084069ecc0e7b :: + 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:211: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_fe3084069ecc0e7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_1127bd0b48dd7f71" hs_bindgen_1127bd0b48dd7f71 :: + 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:217: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_1127bd0b48dd7f71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_556a9db272d632b5" hs_bindgen_556a9db272d632b5 :: + 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:223: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_556a9db272d632b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_c6038706fbd3823e" hs_bindgen_c6038706fbd3823e :: + 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:235: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_c6038706fbd3823e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_4a31eb0d5f6dcd14" hs_bindgen_4a31eb0d5f6dcd14 :: + 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:245: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_4a31eb0d5f6dcd14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_3942c7874c2226c7" hs_bindgen_3942c7874c2226c7 :: + 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:250:28@ + +__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_3942c7874c2226c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_9857690829f27c95" hs_bindgen_9857690829f27c95 :: + 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:255: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_9857690829f27c95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_8353676a1c7d86d2" hs_bindgen_8353676a1c7d86d2 :: + 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:272: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 "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_8353676a1c7d86d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_f58eb49eeeb8593d" hs_bindgen_f58eb49eeeb8593d :: + 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:284: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_f58eb49eeeb8593d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_4add635b5b5be3b3" hs_bindgen_4add635b5b5be3b3 :: + 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:298: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_4add635b5b5be3b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_ec85e80ec3c337a2" hs_bindgen_ec85e80ec3c337a2 :: + 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:306: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_ec85e80ec3c337a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_88dcaf35ee4e6773" hs_bindgen_88dcaf35ee4e6773 :: + 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:316: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_88dcaf35ee4e6773 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_8c4a8135963ed904" hs_bindgen_8c4a8135963ed904 :: + 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:326: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_8c4a8135963ed904 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_1c6e814b8b6ae911" hs_bindgen_1c6e814b8b6ae911 :: + 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:336: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_1c6e814b8b6ae911 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_d1b6e2ffa27868f6" hs_bindgen_d1b6e2ffa27868f6 :: + 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:343: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_d1b6e2ffa27868f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_9f842a89c82a27b4" hs_bindgen_9f842a89c82a27b4 :: + 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:357: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_9f842a89c82a27b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_2325be9a0c944217" hs_bindgen_2325be9a0c944217 :: + 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:365: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_2325be9a0c944217 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_2da338ac3dc0cb28" hs_bindgen_2da338ac3dc0cb28 :: + 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:373: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_2da338ac3dc0cb28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_28d28e9f4aeb7c9a" hs_bindgen_28d28e9f4aeb7c9a :: + 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:381: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_28d28e9f4aeb7c9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_8da84dd69b8b29d6" hs_bindgen_8da84dd69b8b29d6 :: + 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:390: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_8da84dd69b8b29d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_1166f2186fac3a37" hs_bindgen_1166f2186fac3a37 :: + 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:400: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_1166f2186fac3a37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_df845986de7c24ce" hs_bindgen_df845986de7c24ce :: + 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:408: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_df845986de7c24ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_b3400ecf5b437ce5" hs_bindgen_b3400ecf5b437ce5 :: + 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:415: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_b3400ecf5b437ce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_c3ffffa10cf49da2" hs_bindgen_c3ffffa10cf49da2 :: + 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:423: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_c3ffffa10cf49da2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_98dcd7d3c95dbeaa" hs_bindgen_98dcd7d3c95dbeaa :: + 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:438: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_98dcd7d3c95dbeaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_77aec99bf8a10bbf" hs_bindgen_77aec99bf8a10bbf :: + 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:446: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_77aec99bf8a10bbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_4ce71f43412b1e32" hs_bindgen_4ce71f43412b1e32 :: + 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:455: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_4ce71f43412b1e32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_5a992bbefd4c275e" hs_bindgen_5a992bbefd4c275e :: + 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:464: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_5a992bbefd4c275e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_39ab4d8872e4ca23" hs_bindgen_39ab4d8872e4ca23 :: + 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:473: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_39ab4d8872e4ca23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_56e600a0a078f158" hs_bindgen_56e600a0a078f158 :: + 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:483: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_56e600a0a078f158 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_367177ba50aacfb2" hs_bindgen_367177ba50aacfb2 :: + 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:491: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_367177ba50aacfb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_0a069078b5136a44" hs_bindgen_0a069078b5136a44 :: + 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:499: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_0a069078b5136a44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_6dac5729e5c4e67c" hs_bindgen_6dac5729e5c4e67c :: + 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:509: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_6dac5729e5c4e67c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_d8bbce6cbe865bad" hs_bindgen_d8bbce6cbe865bad :: + 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:519: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_d8bbce6cbe865bad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_c755cc3388d18639" hs_bindgen_c755cc3388d18639 :: + 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:533: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_c755cc3388d18639 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_27d168cb41e3a20f" hs_bindgen_27d168cb41e3a20f :: + 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:538: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_27d168cb41e3a20f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_c12dec9e19b91a71" hs_bindgen_c12dec9e19b91a71 :: + 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:543: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_c12dec9e19b91a71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_654235052fac4262" hs_bindgen_654235052fac4262 :: + 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:548: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_654235052fac4262 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_c20431219db7912d" hs_bindgen_c20431219db7912d :: + 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:553: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_c20431219db7912d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_145d9c582777ab7b" hs_bindgen_145d9c582777ab7b :: + 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:558: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_145d9c582777ab7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_eec826893de77aaf" hs_bindgen_eec826893de77aaf :: + 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:565: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_eec826893de77aaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_f9bc8189868e6515" hs_bindgen_f9bc8189868e6515 :: + 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:570: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_f9bc8189868e6515 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_7f71c974cf991b1b" hs_bindgen_7f71c974cf991b1b :: + 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:576: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_7f71c974cf991b1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_da618943f9739157" hs_bindgen_da618943f9739157 :: + 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:582: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_da618943f9739157 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_b3cdd3fbedc582b2" hs_bindgen_b3cdd3fbedc582b2 :: + 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:588:5@ + +__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_b3cdd3fbedc582b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_fb0f73a669760ccc" hs_bindgen_fb0f73a669760ccc :: + 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:594:5@ + +__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_fb0f73a669760ccc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_cb7466a6f5750d9f" hs_bindgen_cb7466a6f5750d9f :: + 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:599: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_cb7466a6f5750d9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_78244a0a184bbb56" hs_bindgen_78244a0a184bbb56 :: + 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:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_78244a0a184bbb56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_cee8e1098a5e4595" hs_bindgen_cee8e1098a5e4595 :: + 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:614: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_cee8e1098a5e4595 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_99019f5141b1edc4" hs_bindgen_99019f5141b1edc4 :: + 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:619: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_99019f5141b1edc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_484dc8e84406f183" hs_bindgen_484dc8e84406f183 :: + 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_484dc8e84406f183 + +{-| + + 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:646: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_484dc8e84406f183 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_02b77acc3d1ee5f8" hs_bindgen_02b77acc3d1ee5f8 :: + 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:658:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_02b77acc3d1ee5f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_6eba8f711a4ca0c3" hs_bindgen_6eba8f711a4ca0c3 :: + 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:664:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_6eba8f711a4ca0c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_c33135fbb4a7647c" hs_bindgen_c33135fbb4a7647c :: + 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_c33135fbb4a7647c + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:683: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_c33135fbb4a7647c x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_768eab9fe2c01b51" hs_bindgen_768eab9fe2c01b51 :: + 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_768eab9fe2c01b51 + +{-| 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:716: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_768eab9fe2c01b51 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_68f395b4fed56bdb" hs_bindgen_68f395b4fed56bdb :: + 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_68f395b4fed56bdb + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:740: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_68f395b4fed56bdb x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_cdd66b753824de4a" hs_bindgen_cdd66b753824de4a :: + 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_cdd66b753824de4a + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:767: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_cdd66b753824de4a x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_3d3b961c2a2ea474" hs_bindgen_3d3b961c2a2ea474 :: + 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_3d3b961c2a2ea474 + +{-| 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:786: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_3d3b961c2a2ea474 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_5e72115d9c57966a" hs_bindgen_5e72115d9c57966a :: + 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_5e72115d9c57966a + +{-| 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:809: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_5e72115d9c57966a 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_5_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_5fcfb9ebb7b15788" hs_bindgen_5fcfb9ebb7b15788 :: + 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:827: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_5fcfb9ebb7b15788 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_8d2e626fbbaf17a8" hs_bindgen_8d2e626fbbaf17a8 :: + 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:833: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_8d2e626fbbaf17a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_f815c87935441a01" hs_bindgen_f815c87935441a01 :: + 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:839: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_f815c87935441a01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_18ec67526a82ef3c" hs_bindgen_18ec67526a82ef3c :: + 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_18ec67526a82ef3c + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:844: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_18ec67526a82ef3c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_a70f46d39e41feb9" hs_bindgen_a70f46d39e41feb9 :: + 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:850: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_a70f46d39e41feb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_b0b8020220394cce" hs_bindgen_b0b8020220394cce :: + 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_b0b8020220394cce + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:856: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_b0b8020220394cce x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_bdf0de54a0c00d2b" hs_bindgen_bdf0de54a0c00d2b :: + 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_bdf0de54a0c00d2b + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:862: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_bdf0de54a0c00d2b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_7f72e623f60c146f" hs_bindgen_7f72e623f60c146f :: + 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:870: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_7f72e623f60c146f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_8e1d49bd185db7f5" hs_bindgen_8e1d49bd185db7f5 :: + 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:880: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_8e1d49bd185db7f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_0bbbbe833fbf0a7d" hs_bindgen_0bbbbe833fbf0a7d :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:893: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_0bbbbe833fbf0a7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_a0c4abf38b11d82e" hs_bindgen_a0c4abf38b11d82e :: + 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:899:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_a0c4abf38b11d82e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_4b8e5b1ab0878355" hs_bindgen_4b8e5b1ab0878355 :: + 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:904: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_4b8e5b1ab0878355 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_c6fdbf1dcacf90be" hs_bindgen_c6fdbf1dcacf90be :: + 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:909:28@ + +__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_c6fdbf1dcacf90be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_5e110e8fd711652f" hs_bindgen_5e110e8fd711652f :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:914:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_5e110e8fd711652f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_753a024c23157a82" hs_bindgen_753a024c23157a82 :: + 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:919: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_753a024c23157a82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_d560e8178a2f37e4" hs_bindgen_d560e8178a2f37e4 :: + 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:924: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_d560e8178a2f37e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_cca6187d579e9df2" hs_bindgen_cca6187d579e9df2 :: + 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:929: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_cca6187d579e9df2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_d0196c3fb0425fea" hs_bindgen_d0196c3fb0425fea :: + 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:935: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_d0196c3fb0425fea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_df5e84bd743ec453" hs_bindgen_df5e84bd743ec453 :: + 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:940: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_df5e84bd743ec453 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_8c0aa6cccdd29b26" hs_bindgen_8c0aa6cccdd29b26 :: + 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:945: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_8c0aa6cccdd29b26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_f632ada61a9cf967" hs_bindgen_f632ada61a9cf967 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:950: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_f632ada61a9cf967 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_50c7fae8818282b7" hs_bindgen_50c7fae8818282b7 :: + 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_50c7fae8818282b7 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:955: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_50c7fae8818282b7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_1d0d9df3f89722e8" hs_bindgen_1d0d9df3f89722e8 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:960: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_1d0d9df3f89722e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_ebb5186676fa5f39" hs_bindgen_ebb5186676fa5f39 :: + 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:967: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_ebb5186676fa5f39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_9db0d92d4ed243a5" hs_bindgen_9db0d92d4ed243a5 :: + 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:972: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_9db0d92d4ed243a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_6f01265990a348a2" hs_bindgen_6f01265990a348a2 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:974: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_6f01265990a348a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_6d3398ee47539fb8" hs_bindgen_6d3398ee47539fb8 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:976: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_6d3398ee47539fb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_b1f6a05f6cf452b9" hs_bindgen_b1f6a05f6cf452b9 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:978: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_b1f6a05f6cf452b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_f8ee21e0fb59af02" hs_bindgen_f8ee21e0fb59af02 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:979: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_f8ee21e0fb59af02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_4cb71aefeb01fbe3" hs_bindgen_4cb71aefeb01fbe3 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:981: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_4cb71aefeb01fbe3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_92f5b88ec49a51ac" hs_bindgen_92f5b88ec49a51ac :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:982: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_92f5b88ec49a51ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_71b39583d663a87a" hs_bindgen_71b39583d663a87a :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:984: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_71b39583d663a87a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_ec6d3c692e32a657" hs_bindgen_ec6d3c692e32a657 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:985: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_ec6d3c692e32a657 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_988aa139a54e043e" hs_bindgen_988aa139a54e043e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:986: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_988aa139a54e043e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_e8f49a32d810ff89" hs_bindgen_e8f49a32d810ff89 :: + 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:989: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_e8f49a32d810ff89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_3702e35109095dbe" hs_bindgen_3702e35109095dbe :: + 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:992: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_3702e35109095dbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_da520a55fdea4fc0" hs_bindgen_da520a55fdea4fc0 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:999: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_da520a55fdea4fc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_2bde8554c2d06a6e" hs_bindgen_2bde8554c2d06a6e :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1006: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_2bde8554c2d06a6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_bd9b6e0cdc64647e" hs_bindgen_bd9b6e0cdc64647e :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1011: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_bd9b6e0cdc64647e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_eaffaad4060c2b25" hs_bindgen_eaffaad4060c2b25 :: + 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:1015: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_eaffaad4060c2b25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_fb1e1d4f48c01acc" hs_bindgen_fb1e1d4f48c01acc :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1017: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_fb1e1d4f48c01acc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_e3320a56b72f2394" hs_bindgen_e3320a56b72f2394 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1018: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_e3320a56b72f2394 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_35aa817063743106" hs_bindgen_35aa817063743106 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1020: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_35aa817063743106 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_b45f02e3749744e6" hs_bindgen_b45f02e3749744e6 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1022: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_b45f02e3749744e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_5e0d81416146b46d" hs_bindgen_5e0d81416146b46d :: + 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:1025: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_5e0d81416146b46d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_7e0563787b43de26" hs_bindgen_7e0563787b43de26 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1027: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_7e0563787b43de26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_825dc1e9513c1e25" hs_bindgen_825dc1e9513c1e25 :: + 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:1034: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_825dc1e9513c1e25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_0585f191da18a752" hs_bindgen_0585f191da18a752 :: + 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:1041: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_0585f191da18a752 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_926cd08953d898b4" hs_bindgen_926cd08953d898b4 :: + 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:1046: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_926cd08953d898b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_d8503c2cff35523c" hs_bindgen_d8503c2cff35523c :: + 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:1051: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_d8503c2cff35523c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_78d7449fcd5a8ba6" hs_bindgen_78d7449fcd5a8ba6 :: + 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:1069: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_78d7449fcd5a8ba6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_8c1bad913138ada1" hs_bindgen_8c1bad913138ada1 :: + 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:1080: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_8c1bad913138ada1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_7840410542570e92" hs_bindgen_7840410542570e92 :: + 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:1096: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_7840410542570e92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_eac9d8595e2d0645" hs_bindgen_eac9d8595e2d0645 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1100: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_eac9d8595e2d0645 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_c2b93cbda40f4f2a" hs_bindgen_c2b93cbda40f4f2a :: + 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:1103: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_c2b93cbda40f4f2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_a2b437e464b37210" hs_bindgen_a2b437e464b37210 :: + 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:1105: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_a2b437e464b37210 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_d62a57b7e48c1651" hs_bindgen_d62a57b7e48c1651 :: + 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:1107: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_d62a57b7e48c1651 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_903b0b2e34eeab15" hs_bindgen_903b0b2e34eeab15 :: + 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:1109: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_903b0b2e34eeab15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_9e5375035d2f5b35" hs_bindgen_9e5375035d2f5b35 :: + 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:1111: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_9e5375035d2f5b35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_28387e0236bcecc0" hs_bindgen_28387e0236bcecc0 :: + 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:1131: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_28387e0236bcecc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_74f464f8e300276a" hs_bindgen_74f464f8e300276a :: + 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:1153: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_74f464f8e300276a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_2ce1d01d46a87413" hs_bindgen_2ce1d01d46a87413 :: + 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_2ce1d01d46a87413 + +{-| 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:1161: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_2ce1d01d46a87413 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_e9feb9149165f1c0" hs_bindgen_e9feb9149165f1c0 :: + 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:1166:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_e9feb9149165f1c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_2125bfa9c4d9e5b3" hs_bindgen_2125bfa9c4d9e5b3 :: + 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:1178: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_2125bfa9c4d9e5b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_0aa596547a5cced8" hs_bindgen_0aa596547a5cced8 :: + 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:1183: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_0aa596547a5cced8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_0178594d86259f71" hs_bindgen_0178594d86259f71 :: + 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:1188: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_0178594d86259f71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_71acef7221d91329" hs_bindgen_71acef7221d91329 :: + 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:1190: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_71acef7221d91329 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_836091fd39569f39" hs_bindgen_836091fd39569f39 :: + 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:1197: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_836091fd39569f39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_49d25c72dee17529" hs_bindgen_49d25c72dee17529 :: + 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:1212: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_49d25c72dee17529 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_d28985cbeb677a24" hs_bindgen_d28985cbeb677a24 :: + 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:1227: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_d28985cbeb677a24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_fe0ddf5f756dc9be" hs_bindgen_fe0ddf5f756dc9be :: + 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:1244: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_fe0ddf5f756dc9be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_62b6f1530dffab36" hs_bindgen_62b6f1530dffab36 :: + 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:1259: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_62b6f1530dffab36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_368d2c24464a470a" hs_bindgen_368d2c24464a470a :: + 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:1275: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_368d2c24464a470a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_e3ca3bf2e376329f" hs_bindgen_e3ca3bf2e376329f :: + 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:1290: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_e3ca3bf2e376329f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_c826d34ca090df85" hs_bindgen_c826d34ca090df85 :: + 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_c826d34ca090df85 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1301: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_c826d34ca090df85 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_946ef9c890658b0e" hs_bindgen_946ef9c890658b0e :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1303: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_946ef9c890658b0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_fb8a1cbd4bd6d2d7" hs_bindgen_fb8a1cbd4bd6d2d7 :: + 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:1305: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_fb8a1cbd4bd6d2d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_baea9329aa86e3b9" hs_bindgen_baea9329aa86e3b9 :: + 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:1310: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_baea9329aa86e3b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_15c1d57ad7631cde" hs_bindgen_15c1d57ad7631cde :: + 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:1315: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_15c1d57ad7631cde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_6b20175651c2ea11" hs_bindgen_6b20175651c2ea11 :: + 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:1317: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_6b20175651c2ea11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_88c0406d8458e8b0" hs_bindgen_88c0406d8458e8b0 :: + 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:1322: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_88c0406d8458e8b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_7ca2612eaa7126d9" hs_bindgen_7ca2612eaa7126d9 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1324: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_7ca2612eaa7126d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_37a9e68b09b30941" hs_bindgen_37a9e68b09b30941 :: + 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:1327: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_37a9e68b09b30941 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_4e16ca1e6c8ff679" hs_bindgen_4e16ca1e6c8ff679 :: + 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:1332:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_4e16ca1e6c8ff679 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_d1fe09da54452880" hs_bindgen_d1fe09da54452880 :: + 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:1337: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_d1fe09da54452880 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_d099e5c003145eb8" hs_bindgen_d099e5c003145eb8 :: + 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:1339: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_d099e5c003145eb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_7c763c920dacfb58" hs_bindgen_7c763c920dacfb58 :: + 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:1344: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_7c763c920dacfb58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_7e65dbe6c07088bd" hs_bindgen_7e65dbe6c07088bd :: + 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_7e65dbe6c07088bd + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1346: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_7e65dbe6c07088bd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_a32e4a5252886c54" hs_bindgen_a32e4a5252886c54 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1349: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_a32e4a5252886c54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_1d9614618b3fabe2" hs_bindgen_1d9614618b3fabe2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1351: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_1d9614618b3fabe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_3620d06e1d3eea5e" hs_bindgen_3620d06e1d3eea5e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1353: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_3620d06e1d3eea5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_7b2abefe304c9816" hs_bindgen_7b2abefe304c9816 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1355: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_7b2abefe304c9816 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_fb083d53bf7eb4d8" hs_bindgen_fb083d53bf7eb4d8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1357: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_fb083d53bf7eb4d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_734dc8ed67641a8b" hs_bindgen_734dc8ed67641a8b :: + 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:1360: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_734dc8ed67641a8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_4ca404966d1af6ba" hs_bindgen_4ca404966d1af6ba :: + 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:1362: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_4ca404966d1af6ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_b44da639ba303af5" hs_bindgen_b44da639ba303af5 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1365: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_b44da639ba303af5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_a37f7fafc9563aca" hs_bindgen_a37f7fafc9563aca :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1367: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_a37f7fafc9563aca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_8ed24919b2426b4d" hs_bindgen_8ed24919b2426b4d :: + 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:1373: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_8ed24919b2426b4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_e15643b5b16e0b6a" hs_bindgen_e15643b5b16e0b6a :: + 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:1376: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_e15643b5b16e0b6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_8af98b8fafb9a7b2" hs_bindgen_8af98b8fafb9a7b2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1379: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_8af98b8fafb9a7b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_465b14ab18939f0a" hs_bindgen_465b14ab18939f0a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1382: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_465b14ab18939f0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_4d3f74b2d5918837" hs_bindgen_4d3f74b2d5918837 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1384: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_4d3f74b2d5918837 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_c226fd82ca707ca1" hs_bindgen_c226fd82ca707ca1 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1386: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_c226fd82ca707ca1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_8c2874a56343d0bf" hs_bindgen_8c2874a56343d0bf :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1388: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_8c2874a56343d0bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_1b872ff1a0e59037" hs_bindgen_1b872ff1a0e59037 :: + 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:1403: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_1b872ff1a0e59037 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_b0144f7f1c939462" hs_bindgen_b0144f7f1c939462 :: + 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:1417: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_b0144f7f1c939462 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_c880f165b565fd4f" hs_bindgen_c880f165b565fd4f :: + 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:1435: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_c880f165b565fd4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_26fc0bcd6fdfa6c8" hs_bindgen_26fc0bcd6fdfa6c8 :: + 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:1450: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_26fc0bcd6fdfa6c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_8054a2c94de0b318" hs_bindgen_8054a2c94de0b318 :: + 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_8054a2c94de0b318 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1456: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_8054a2c94de0b318 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_ea994b6346c6bb90" hs_bindgen_ea994b6346c6bb90 :: + 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_ea994b6346c6bb90 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1458: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_ea994b6346c6bb90 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_f37e4f22bcf33ef0" hs_bindgen_f37e4f22bcf33ef0 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1460: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_f37e4f22bcf33ef0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_ab2fc87dd526aa21" hs_bindgen_ab2fc87dd526aa21 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1462: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_ab2fc87dd526aa21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_2810b2254ccd5cc7" hs_bindgen_2810b2254ccd5cc7 :: + 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_2810b2254ccd5cc7 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1468: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_2810b2254ccd5cc7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_e6e798fd4e6208ae" hs_bindgen_e6e798fd4e6208ae :: + 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_e6e798fd4e6208ae + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1470: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_e6e798fd4e6208ae x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_98f2c7598e3d3b61" hs_bindgen_98f2c7598e3d3b61 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1472: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_98f2c7598e3d3b61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_d50b1e55e727b77c" hs_bindgen_d50b1e55e727b77c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1474: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_d50b1e55e727b77c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_5e6caf41f0b66e21" hs_bindgen_5e6caf41f0b66e21 :: + 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_5e6caf41f0b66e21 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1480: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_5e6caf41f0b66e21 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_8a4d8277e76ef3bd" hs_bindgen_8a4d8277e76ef3bd :: + 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_8a4d8277e76ef3bd + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1482: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_8a4d8277e76ef3bd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_8e56ad641b583ce9" hs_bindgen_8e56ad641b583ce9 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1484: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_8e56ad641b583ce9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_1cc01b7d14dc1a24" hs_bindgen_1cc01b7d14dc1a24 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1486: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_1cc01b7d14dc1a24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_a9c6ad1a1c62691b" hs_bindgen_a9c6ad1a1c62691b :: + 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_a9c6ad1a1c62691b + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1492: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_a9c6ad1a1c62691b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_3750f75d249d4a5d" hs_bindgen_3750f75d249d4a5d :: + 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_3750f75d249d4a5d + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1494: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_3750f75d249d4a5d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_4603bbeca1bcc6b8" hs_bindgen_4603bbeca1bcc6b8 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1496: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_4603bbeca1bcc6b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_18e34fedcdddbad8" hs_bindgen_18e34fedcdddbad8 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1498: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_18e34fedcdddbad8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_8928d5d178ad1aae" hs_bindgen_8928d5d178ad1aae :: + 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_8928d5d178ad1aae + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1504: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_8928d5d178ad1aae x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_4a7efcb7277414db" hs_bindgen_4a7efcb7277414db :: + 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_4a7efcb7277414db + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1506: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_4a7efcb7277414db x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_9016d033a9a84205" hs_bindgen_9016d033a9a84205 :: + 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:1509: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_9016d033a9a84205 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_7e0f7b8d48aac64a" hs_bindgen_7e0f7b8d48aac64a :: + 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:1512: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_7e0f7b8d48aac64a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_3de964ca042186dc" hs_bindgen_3de964ca042186dc :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1518: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_3de964ca042186dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_5a86a633fe879ff0" hs_bindgen_5a86a633fe879ff0 :: + 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:1521: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_5a86a633fe879ff0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_e16c1c3b44390533" hs_bindgen_e16c1c3b44390533 :: + 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:1524: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_e16c1c3b44390533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_dbec57747fd74654" hs_bindgen_dbec57747fd74654 :: + 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:1527: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_dbec57747fd74654 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_87ed0fb781dc08b0" hs_bindgen_87ed0fb781dc08b0 :: + 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:1530: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_87ed0fb781dc08b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_c0881ebe6950d8f8" hs_bindgen_c0881ebe6950d8f8 :: + 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:1533: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_c0881ebe6950d8f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_520f975492011606" hs_bindgen_520f975492011606 :: + 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:1536: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_520f975492011606 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_b2b89b7e1ac31532" hs_bindgen_b2b89b7e1ac31532 :: + 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:1540: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_b2b89b7e1ac31532 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_8640669863acde97" hs_bindgen_8640669863acde97 :: + 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:1544: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_8640669863acde97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_3fa4274a9bded4f9" hs_bindgen_3fa4274a9bded4f9 :: + 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:1547: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_3fa4274a9bded4f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_a1fa648f447861f4" hs_bindgen_a1fa648f447861f4 :: + 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:1554: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_a1fa648f447861f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_d76923b1b5591d06" hs_bindgen_d76923b1b5591d06 :: + 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:1562: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_d76923b1b5591d06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_c51dd10ebbe60412" hs_bindgen_c51dd10ebbe60412 :: + 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:1567: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_c51dd10ebbe60412 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_5130ebfdd372f8ce" hs_bindgen_5130ebfdd372f8ce :: + 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:1570: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_5130ebfdd372f8ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_3171dfaf8af9f3a3" hs_bindgen_3171dfaf8af9f3a3 :: + 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_3171dfaf8af9f3a3 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1573: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_3171dfaf8af9f3a3 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_368ea316a5875ed0" hs_bindgen_368ea316a5875ed0 :: + 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:1586: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_368ea316a5875ed0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_5fec30ef05dd7851" hs_bindgen_5fec30ef05dd7851 :: + 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:1591: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_5fec30ef05dd7851 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_b79a8b225c729a1d" hs_bindgen_b79a8b225c729a1d :: + 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:1594: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_b79a8b225c729a1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_4aabf76fa14051a2" hs_bindgen_4aabf76fa14051a2 :: + 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_4aabf76fa14051a2 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1597: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_4aabf76fa14051a2 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_15fc8730770cb6e7" hs_bindgen_15fc8730770cb6e7 :: + 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:1609: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_15fc8730770cb6e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_a7208e43c4300e87" hs_bindgen_a7208e43c4300e87 :: + 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:1614: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_a7208e43c4300e87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_65970b6fde52e800" hs_bindgen_65970b6fde52e800 :: + 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:1616: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_65970b6fde52e800 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_bbf9402721ece5d6" hs_bindgen_bbf9402721ece5d6 :: + 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_bbf9402721ece5d6 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1618: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_bbf9402721ece5d6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_6808e9b2bd15e511" hs_bindgen_6808e9b2bd15e511 :: + 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:1621: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_6808e9b2bd15e511 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_99cc0201bfe3c051" hs_bindgen_99cc0201bfe3c051 :: + 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:1629: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_99cc0201bfe3c051 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_e06f884bfc21dcfb" hs_bindgen_e06f884bfc21dcfb :: + 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:1637: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_e06f884bfc21dcfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_aab4378c01526be3" hs_bindgen_aab4378c01526be3 :: + 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_aab4378c01526be3 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1639: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_aab4378c01526be3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_b516155b409f0514" hs_bindgen_b516155b409f0514 :: + 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_b516155b409f0514 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1640: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_b516155b409f0514 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_88245522c9a73ba6" hs_bindgen_88245522c9a73ba6 :: + 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:1648: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_88245522c9a73ba6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_9cb81c80cd16c90d" hs_bindgen_9cb81c80cd16c90d :: + 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:1653: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_9cb81c80cd16c90d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_4cfbefc3a2381c74" hs_bindgen_4cfbefc3a2381c74 :: + 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:1655: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_4cfbefc3a2381c74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_f9eea002aaaf26f6" hs_bindgen_f9eea002aaaf26f6 :: + 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:1658: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_f9eea002aaaf26f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_4e370704b4372ca8" hs_bindgen_4e370704b4372ca8 :: + 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:1660: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_4e370704b4372ca8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_011b04b659c966d5" hs_bindgen_011b04b659c966d5 :: + 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_011b04b659c966d5 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1663: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_011b04b659c966d5 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_0ee42c56126e8b8a" hs_bindgen_0ee42c56126e8b8a :: + 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:1677: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_0ee42c56126e8b8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_3c06d72337357132" hs_bindgen_3c06d72337357132 :: + 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:1682: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_3c06d72337357132 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_6ebd9ac5ff3b119a" hs_bindgen_6ebd9ac5ff3b119a :: + 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:1685: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_6ebd9ac5ff3b119a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_35560b380bdbf29a" hs_bindgen_35560b380bdbf29a :: + 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:1690: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_35560b380bdbf29a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_50c53897e0613994" hs_bindgen_50c53897e0613994 :: + 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_50c53897e0613994 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1694: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_50c53897e0613994 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_2af67dfb7f230438" hs_bindgen_2af67dfb7f230438 :: + 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:1707: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_2af67dfb7f230438 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_d906f9ff5bba388f" hs_bindgen_d906f9ff5bba388f :: + 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:1712: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_d906f9ff5bba388f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_5f08a65c9cf8db75" hs_bindgen_5f08a65c9cf8db75 :: + 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:1715: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_5f08a65c9cf8db75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_d3e8a4fcae09b3d0" hs_bindgen_d3e8a4fcae09b3d0 :: + 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_d3e8a4fcae09b3d0 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1720: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_d3e8a4fcae09b3d0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_144b9cf0c84d59ec" hs_bindgen_144b9cf0c84d59ec :: + 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:1733: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_144b9cf0c84d59ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_6c7c2c68c15b2762" hs_bindgen_6c7c2c68c15b2762 :: + 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_6c7c2c68c15b2762 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1740: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_6c7c2c68c15b2762 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_3e5e98c4b93f438c" hs_bindgen_3e5e98c4b93f438c :: + 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_3e5e98c4b93f438c + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1755: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_3e5e98c4b93f438c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_4baf4293da5a14e6" hs_bindgen_4baf4293da5a14e6 :: + 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_4baf4293da5a14e6 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1770: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_4baf4293da5a14e6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_5afe1a6eb5afeea1" hs_bindgen_5afe1a6eb5afeea1 :: + 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:1771: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_5afe1a6eb5afeea1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_2ad0de1ef1d02ad6" hs_bindgen_2ad0de1ef1d02ad6 :: + 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:1776: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_2ad0de1ef1d02ad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_bfa682a8b3cacf37" hs_bindgen_bfa682a8b3cacf37 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1778: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_bfa682a8b3cacf37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_7820bd1894d4fedb" hs_bindgen_7820bd1894d4fedb :: + 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:1781: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_7820bd1894d4fedb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_c2b95f9694e724f5" hs_bindgen_c2b95f9694e724f5 :: + 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:1782: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_c2b95f9694e724f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_84aa7038e0b63902" hs_bindgen_84aa7038e0b63902 :: + 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:1784: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_84aa7038e0b63902 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_eb42597003b87073" hs_bindgen_eb42597003b87073 :: + 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:1785: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_eb42597003b87073 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_6a61e23c0236173f" hs_bindgen_6a61e23c0236173f :: + 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:1788: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_6a61e23c0236173f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_1996fcd46b84da96" hs_bindgen_1996fcd46b84da96 :: + 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:1790: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_1996fcd46b84da96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_7b3ba4f34f3f55fb" hs_bindgen_7b3ba4f34f3f55fb :: + 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:1791: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_7b3ba4f34f3f55fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_d223cfeaf53ae8c3" hs_bindgen_d223cfeaf53ae8c3 :: + 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:1792: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_d223cfeaf53ae8c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_8b81b2537302b35a" hs_bindgen_8b81b2537302b35a :: + 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:1794: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_8b81b2537302b35a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_5086b73fb5f21e0d" hs_bindgen_5086b73fb5f21e0d :: + 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:1797: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_5086b73fb5f21e0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_1af62e16db0f5f94" hs_bindgen_1af62e16db0f5f94 :: + 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:1799: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_1af62e16db0f5f94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_e99460c6b299e1ca" hs_bindgen_e99460c6b299e1ca :: + 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:1802: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_e99460c6b299e1ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_c156e834e3aa530f" hs_bindgen_c156e834e3aa530f :: + 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:1806: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_c156e834e3aa530f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_c073ea120c23fda6" hs_bindgen_c073ea120c23fda6 :: + 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:1809: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_c073ea120c23fda6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_9a1d50560d9f1980" hs_bindgen_9a1d50560d9f1980 :: + 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:1812: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_9a1d50560d9f1980 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_b073abbf8a09693d" hs_bindgen_b073abbf8a09693d :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1828: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_b073abbf8a09693d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_b58ea676ae0119d7" hs_bindgen_b58ea676ae0119d7 :: + 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:1834: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_b58ea676ae0119d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_725266f2deab361d" hs_bindgen_725266f2deab361d :: + 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: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_725266f2deab361d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_49844cc15e749b3a" hs_bindgen_49844cc15e749b3a :: + 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:1860: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_49844cc15e749b3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_dfc88e4d13ba2739" hs_bindgen_dfc88e4d13ba2739 :: + 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:1868: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_dfc88e4d13ba2739 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_b895404ff198e489" hs_bindgen_b895404ff198e489 :: + 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_b895404ff198e489 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1870: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_b895404ff198e489 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_068115897336b4be" hs_bindgen_068115897336b4be :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1872: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_068115897336b4be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_0e508e281eabeb9e" hs_bindgen_0e508e281eabeb9e :: + 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: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_0e508e281eabeb9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_5cb203770a048b11" hs_bindgen_5cb203770a048b11 :: + 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:1885: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_5cb203770a048b11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_65e4bae4e1dc8297" hs_bindgen_65e4bae4e1dc8297 :: + 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_65e4bae4e1dc8297 + +{-| 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_65e4bae4e1dc8297 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_776efb1c317054da" hs_bindgen_776efb1c317054da :: + 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_776efb1c317054da + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1912: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_776efb1c317054da (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_abe5a199aa1b0588" hs_bindgen_abe5a199aa1b0588 :: + 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_abe5a199aa1b0588 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1920: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_abe5a199aa1b0588 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_98dc130dabf89819" hs_bindgen_98dc130dabf89819 :: + 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_98dc130dabf89819 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1930: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_98dc130dabf89819 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_27990be89f989dfb" hs_bindgen_27990be89f989dfb :: + 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_27990be89f989dfb + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1949: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_27990be89f989dfb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_016c144e536b2cd9" hs_bindgen_016c144e536b2cd9 :: + 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:1956:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_016c144e536b2cd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_d363ebc87f5a95c2" hs_bindgen_d363ebc87f5a95c2 :: + 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:1962: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_d363ebc87f5a95c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_5ec0ff9d528ceadd" hs_bindgen_5ec0ff9d528ceadd :: + 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:1968: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_5ec0ff9d528ceadd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_d7d793db507eba2a" hs_bindgen_d7d793db507eba2a :: + 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_d7d793db507eba2a + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1981: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_d7d793db507eba2a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_71476619c3bf9ed4" hs_bindgen_71476619c3bf9ed4 :: + 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:1989:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_71476619c3bf9ed4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_bec7a8df66dec7d0" hs_bindgen_bec7a8df66dec7d0 :: + 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:1998: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_bec7a8df66dec7d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_1a6f4d5084b2d51f" hs_bindgen_1a6f4d5084b2d51f :: + 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_1a6f4d5084b2d51f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_5dc5a07692b3c660" hs_bindgen_5dc5a07692b3c660 :: + 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_5dc5a07692b3c660 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2020: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_5dc5a07692b3c660 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_56ae5df61ed32f16" hs_bindgen_56ae5df61ed32f16 :: + 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:2027:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_56ae5df61ed32f16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_e42cd49ef6c3e5ab" hs_bindgen_e42cd49ef6c3e5ab :: + 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_e42cd49ef6c3e5ab + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2030: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_e42cd49ef6c3e5ab x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_0100c49c2d8096cb" hs_bindgen_0100c49c2d8096cb :: + 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_0100c49c2d8096cb + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2033: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_0100c49c2d8096cb x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_c8f872974612c8b8" hs_bindgen_c8f872974612c8b8 :: + 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:2045: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_c8f872974612c8b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_3a6b2aade6eec1fc" hs_bindgen_3a6b2aade6eec1fc :: + 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:2053: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_3a6b2aade6eec1fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_c540e916d72a9f46" hs_bindgen_c540e916d72a9f46 :: + 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_c540e916d72a9f46 + +{-| 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:2068: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_c540e916d72a9f46 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_4ef66f43aec56f34" hs_bindgen_4ef66f43aec56f34 :: + 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_4ef66f43aec56f34 + +{-| 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:2087: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_4ef66f43aec56f34 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_f3f7ac6693eb0faf" hs_bindgen_f3f7ac6693eb0faf :: + 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_f3f7ac6693eb0faf + +{-| 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:2103: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_f3f7ac6693eb0faf x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_572dbe35a2994c69" hs_bindgen_572dbe35a2994c69 :: + 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_572dbe35a2994c69 + +{-| 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:2130: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_572dbe35a2994c69 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_5_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_0f5f38defbc5e6ac" hs_bindgen_0f5f38defbc5e6ac :: + 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:2148: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_0f5f38defbc5e6ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_32f1f795a3ab9ff3" hs_bindgen_32f1f795a3ab9ff3 :: + 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:2169: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_32f1f795a3ab9ff3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_8f600f3165b857fc" hs_bindgen_8f600f3165b857fc :: + 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:2190: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_8f600f3165b857fc diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/Unsafe.hs new file mode 100644 index 00000000..c80f51b6 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_5_0/Unsafe.hs @@ -0,0 +1,12609 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_5_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_5_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_cc4ba00c80d274ea (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_48c2e6316b20b63e (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_d1d5716953c27ecd (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_143b71cad6bd4867 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_8c69a7b29c7a7c29 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_b7f68389e1f26970 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_6d6b10ab15f81def (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_115e6a9bfb81a132 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_ddcfaf5f62f7f94d (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_81e0d282c519bacf (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92e00025b95d5f98 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_20e14f46233424db (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f4b5afd763ea76ac (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f212d7907fb1cbd6 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_cefaf6d5a7f3adc1 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8338e65c95f4bd58 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_75274c9623b9a3f1 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e89f82eb13902786 (" + , " 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_135c255ab5afba23 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e8d6c0d69e8080f6 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7d4c1aa176ab125f (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_35239a3a40375278 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_43a64f346f9303ef (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f2acb4a0f54ad704 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_099f8a1193960f5a (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_370bb7bbc655aff9 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_287d0c66469ccd45 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_677eabd43ea619d8 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f5cd5292ebdfa24 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f15fc3bc5a141bd5 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05ac54dd1ecb58c7 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_6cecb1eafa77332b (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_399bc0a0c1f74aac (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8b054dabfa85ab26 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_671f47b6071fd8de (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3056b6e9dddac3e5 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ac1a45463b608c22 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5e69a6ea26781a96 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_275048e5b46eba2f (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a23fe411148be3a4 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_cca9a766f6b432cd (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_734bd5e0528e6f2c (" + , " 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_34efc01712b55673 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_adfb56373edd3900 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2965dd84ae179bb5 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d7896a24c7e8f8d4 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bae40dea7b6771d7 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b8eb4ae45d6320c2 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_89d9f4bddcf9eaca (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_a2306a5a37a463a4 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_ac9540110d79b3c3 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d5fa6448b26e2d53 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05feb1c9fb6e62e3 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3bed029ca2b9db0 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c6a3e59830329c12 (" + , " 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_708d94e20e63ff24 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_720d9beb1a36aede (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_5e21c44a07bb4677 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_91138d378b835248 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_48a3186898798ce8 (" + , " 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_5b1c6d8813751720 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_9550be6fc92e8a57 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_748563f827937498 (" + , " 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_6474c618a9ff9c37 (" + , " 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_11b3d7bb9df01863 (" + , " 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_4637da863c2e8a6d (" + , " 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_1770c77f56e46bc9 (" + , " 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_36972678b11819a3 (" + , " 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_d7bb44b65ff9cbd3 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_181fcc31e40808eb (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4b26cb0cae7c6227 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_5b75fd10fb477d2d (" + , " 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_070a80f413cdd025 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_54cfd9afa54f1271 (" + , " 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_457b3db65f6c88d7 (" + , " 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_3f4cb429979ee03b (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e48adab4bbab0278 (" + , " 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_f3573a921b196fb0 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_495250a1d1a4daab (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8872c3c86e3cd59c (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3fd793849af2dabd (" + , " 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_ecadfea32c7d96d6 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_4d6547194a0cb2f2 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bfc4576b6f09c5e5 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_117f3dad44b0688a (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_322d5aa21d8257ec (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfa77c470e46c89d (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1e1bf4ed13d0ee54 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_16e8cf2005a8486c (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e8f85d74ea9c865 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d5ef2bcc24baf320 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40654b8f87a4fc56 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_98d80f915bb9ddf2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_94d5be1f3b3f4bf8 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_01c950df826073e2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_dd621b50ae151d60 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_36d733982576fb62 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_9d151574c480fc68 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f47438f3a634c07a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b11bb5c007e6e3fc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d37dd762e755e823 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c8d620e2d3c9e6c0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d9e460524371291c (" + , " 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_042bf758a9f9333f (" + , " 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_eefb191770c7495b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_83e1d837ed6dd29c (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f9ae086a95e6d01 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5277d3710f66f666 (" + , " 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_6d453ed4fbbc7f9b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a01dbb4af9677ed8 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cecc8d144ea2b350 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b4a5c583a098db34 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2114e9f967ae1b7c (" + , " 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_0224a9d05bd5f4b3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_32691de6e7b442e5 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3bfc2b0dec040599 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4a8cf8d03b6bcc0a (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fa3838e8a7dbe4c9 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_72863022071dc6e7 (" + , " 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_802f8201f3eef7ae (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a6e0ff50e05e4b1a (" + , " 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_f214224eafffe679 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e6485548bc24903 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3d6f058ae9337ad0 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7938e4ff2c901f3 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_36aa74a65d57a5cd (" + , " 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_497bd55583b7e2ed (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d6c23c17abeacf49 (" + , " 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_bfdf258b891ea9b0 (" + , " 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_2123ea089aa633f7 (" + , " 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_1bcff7c510806c58 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2b3468394bde81a9 (" + , " 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_b44310352210a45a (" + , " 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_7c5cd1d8eb99a811 (" + , " 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_eb6fbad3738a03d5 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bce5a422b14db329 (" + , " 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_bab43bc95b5c5e8c (" + , " 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_9163263ed1817341 (" + , " 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_1e6fa46125c32bc5 (" + , " 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_36eea71a2013b3dd (" + , " 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_d5315ef61e80686d (" + , " 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_1fabd776045c0dc4 (" + , " 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_ec4e876509be88b5 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ca6e45f5774d68c7 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1408d805af6cb6d0 (" + , " 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_9b9b50e315c3cc10 (" + , " 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_8535c1c0b9ed7e1c (" + , " 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_d939cad55b11f74a (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b76c0f2727316f9e (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0222b9f30b98b0af (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_351eaccb0f2e8042 (" + , " 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_6d2488a3f62a42c4 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_569393759daa850f (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a8ba4804d0a305f3 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5a04122c84e1d90 (" + , " 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_a4e3eea366464ff3 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5ccb567955307d9 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1577a1cf633b1389 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0c668cc9108bd8e2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0257478a55f91160 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5b62e97c012ef0b8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_54a160a72e944383 (" + , " 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_fb96c90c5506eda5 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_77d3043b98688609 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_567792e083d52b99 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5c53991ef7622722 (" + , " 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_15918825b1e9886f (" + , " 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_6d7d7ee675926add (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8216ef467b63149b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39b52dde4bca271e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6681827fcf1ef7f9 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_96c250ddefb63416 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b2ac87e41cea9459 (" + , " 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_62a3e48392dd932d (" + , " 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_8f86783ad404479e (" + , " 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_895b784873c2bcdc (" + , " 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_20603efb5525e0e9 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de01b41a85d321b0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05f805da8ddc0239 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_75e9859b09c803f9 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6e79a915385d86d1 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7d9fd6378f7bbc91 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1c0681269d27a79 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3f123f6cbb2b9e0e (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b60a232edd930b15 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebd6d336efda6c71 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9c6120f80ab8b9cb (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be6b53bfdc440034 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2bec0876de6af5ea (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee4b85337828955f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_851810f8529dc860 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7854615e67b6ea02 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eac752913470e64a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_af73eabf59312f14 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ea5e67738d72b92d (" + , " 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_d103b0b18d4d2678 (" + , " 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_44f5d0ac82bca1d2 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_0c70a224ff6c5e66 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1ab4d90cf632ccc3 (" + , " 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_586b90519c480ab9 (" + , " 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_f9355f8cef77ec1f (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_72c767b0419cb321 (" + , " 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_b085f808d4216147 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_99ca57f71e839bc6 (" + , " 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_2e1939ed6a288baa (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8ecb7a7aed4afd70 (" + , " 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_82fc064e369e4aaf (" + , " 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_a18a02d8153de0fd (" + , " 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_562f00b11795dd29 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3ea18dd57c794d6a (" + , " 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_87b42d64a21f1f70 (" + , " 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_cbdefb8ff78b635a (" + , " 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_032ff45446b5a270 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_153505c1548177c6 (" + , " 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_5b84c6bcbd9afc8b (" + , " 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_75a2020c8bfe74a8 (" + , " 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_b38bc365c764ceae (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7c8cd107b82eee2d (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf88036626b39c4e (" + , " 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_169689397775dfde (" + , " 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_1d24e60dc8928de3 (" + , " 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_1d6380a06950e9d5 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d7443654ff1963f8 (" + , " 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_415f63beb48250e2 (" + , " 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_f3b6a2f00c386c4e (" + , " 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_48a4864f4bb88e41 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_94198138880ab28e (" + , " 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_015a720dced34e23 (" + , " 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_ba3383e7d0cde586 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1b1d73d6461c79b6 (" + , " 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_46da959a6ff96394 (" + , " 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_56ae0a8d1ebcc1d2 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_10c1a395fffc6776 (" + , " 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_c84faa4f3266f813 (" + , " 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_ec16886184be81d2 (" + , " 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_992c81bd5c639b66 (" + , " 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_b5295523eff6db0f (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fd238d18e33ceb98 (" + , " 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_a5827ac868ea1bc9 (" + , " 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_a3aff22e8fe6a4bc (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c9e22af91bdec6cf (" + , " 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_57c2ec7f730d37a5 (" + , " 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_632bb7b2245ba696 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_df709750119eb969 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_060bc19cc61b68a8 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_afe56fa55ac481c6 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73a43022e59a7cba (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fd7a185fc731b797 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b626dc6eaa8455c1 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60c555a446ad8920 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d13d31549951c95f (" + , " 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_a1b08bf84f95e3cb (" + , " 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_1d5c331807281d00 (" + , " 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_22577d08d6cd53d7 (" + , " 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_0cb39c09ae425c9d (" + , " 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_33be838ca21fae91 (" + , " 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_0c2ab0368aeac462 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d1e04fb75c73068c (" + , " 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_fda639931c2ba1a3 (" + , " 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_ab832c5398beeeaa (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8d4f3018663b683e (" + , " 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_43f8402f14d6e7ed (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5e4481649bedaad4 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_00ec8043ee2ae7b7 (" + , " 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_e9d82f589de4188b (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_62ae5d7115befbdf (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2bec8e6ee54ae73b (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6143208f7871a79b (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d415ccdec2362eea (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1ade9f741cef15b (" + , " 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_28382f1d53d4b89b (" + , " 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_8a468d5ebd89ecaf (" + , " 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_48dff650f7111393 (" + , " 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_0eba86677560bbf5 (" + , " 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_ed3b06b4397b9cfb (" + , " 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_e6a85c06af8d140c (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e6e1735481d7112d (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5cda29c9ae059003 (" + , " 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_3b4411970a07693f (" + , " 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_33417c18673a9bd5 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_47f941a8252e147d (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d729b4cd225242d (" + , " 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_91e92bf354bbfef4 (" + , " 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_0e2f23715babaaad (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_db19f500d9961359 (" + , " 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_b74679c5da2b1192 (" + , " 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_06f62ee56d7cf8e3 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_00cc1dbfe709e0d0 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_db5c0893bd910049 (" + , " 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_689f75c4dff580d5 (" + , " 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_049eaca7f92f6e0d (" + , " 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_c5b9c91f1fa17604 (" + , " 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_7807733d7bf4e210 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e0c16775c1192e75 (" + , " 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_9c0b0eed1d69480a (" + , " 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);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_cc4ba00c80d274ea" hs_bindgen_cc4ba00c80d274ea :: + 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:158: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_cc4ba00c80d274ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_48c2e6316b20b63e" hs_bindgen_48c2e6316b20b63e :: + 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:167: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_48c2e6316b20b63e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_d1d5716953c27ecd" hs_bindgen_d1d5716953c27ecd :: + 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:174:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_d1d5716953c27ecd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_143b71cad6bd4867" hs_bindgen_143b71cad6bd4867 :: + 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:180: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_143b71cad6bd4867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_8c69a7b29c7a7c29" hs_bindgen_8c69a7b29c7a7c29 :: + 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:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_8c69a7b29c7a7c29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_b7f68389e1f26970" hs_bindgen_b7f68389e1f26970 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_b7f68389e1f26970 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_6d6b10ab15f81def" hs_bindgen_6d6b10ab15f81def :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:195:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_6d6b10ab15f81def + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_115e6a9bfb81a132" hs_bindgen_115e6a9bfb81a132 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:200:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_115e6a9bfb81a132 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_ddcfaf5f62f7f94d" hs_bindgen_ddcfaf5f62f7f94d :: + 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:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_ddcfaf5f62f7f94d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_81e0d282c519bacf" hs_bindgen_81e0d282c519bacf :: + 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:211: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_81e0d282c519bacf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_92e00025b95d5f98" hs_bindgen_92e00025b95d5f98 :: + 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:217: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_92e00025b95d5f98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_20e14f46233424db" hs_bindgen_20e14f46233424db :: + 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:223: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_20e14f46233424db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_f4b5afd763ea76ac" hs_bindgen_f4b5afd763ea76ac :: + 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:235: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_f4b5afd763ea76ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_f212d7907fb1cbd6" hs_bindgen_f212d7907fb1cbd6 :: + 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:245: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_f212d7907fb1cbd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_cefaf6d5a7f3adc1" hs_bindgen_cefaf6d5a7f3adc1 :: + 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:250:28@ + +__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_cefaf6d5a7f3adc1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_8338e65c95f4bd58" hs_bindgen_8338e65c95f4bd58 :: + 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:255: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_8338e65c95f4bd58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_75274c9623b9a3f1" hs_bindgen_75274c9623b9a3f1 :: + 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:272: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 "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_75274c9623b9a3f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_e89f82eb13902786" hs_bindgen_e89f82eb13902786 :: + 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:284: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_e89f82eb13902786 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_135c255ab5afba23" hs_bindgen_135c255ab5afba23 :: + 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:298: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_135c255ab5afba23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_e8d6c0d69e8080f6" hs_bindgen_e8d6c0d69e8080f6 :: + 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:306: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_e8d6c0d69e8080f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_7d4c1aa176ab125f" hs_bindgen_7d4c1aa176ab125f :: + 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:316: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_7d4c1aa176ab125f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_35239a3a40375278" hs_bindgen_35239a3a40375278 :: + 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:326: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_35239a3a40375278 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_43a64f346f9303ef" hs_bindgen_43a64f346f9303ef :: + 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:336: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_43a64f346f9303ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_f2acb4a0f54ad704" hs_bindgen_f2acb4a0f54ad704 :: + 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:343: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_f2acb4a0f54ad704 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_099f8a1193960f5a" hs_bindgen_099f8a1193960f5a :: + 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:357: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_099f8a1193960f5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_370bb7bbc655aff9" hs_bindgen_370bb7bbc655aff9 :: + 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:365: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_370bb7bbc655aff9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_287d0c66469ccd45" hs_bindgen_287d0c66469ccd45 :: + 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:373: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_287d0c66469ccd45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_677eabd43ea619d8" hs_bindgen_677eabd43ea619d8 :: + 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:381: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_677eabd43ea619d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_4f5cd5292ebdfa24" hs_bindgen_4f5cd5292ebdfa24 :: + 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:390: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_4f5cd5292ebdfa24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_f15fc3bc5a141bd5" hs_bindgen_f15fc3bc5a141bd5 :: + 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:400: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_f15fc3bc5a141bd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_05ac54dd1ecb58c7" hs_bindgen_05ac54dd1ecb58c7 :: + 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:408: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_05ac54dd1ecb58c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_6cecb1eafa77332b" hs_bindgen_6cecb1eafa77332b :: + 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:415: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_6cecb1eafa77332b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_399bc0a0c1f74aac" hs_bindgen_399bc0a0c1f74aac :: + 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:423: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_399bc0a0c1f74aac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_8b054dabfa85ab26" hs_bindgen_8b054dabfa85ab26 :: + 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:438: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_8b054dabfa85ab26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_671f47b6071fd8de" hs_bindgen_671f47b6071fd8de :: + 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:446: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_671f47b6071fd8de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_3056b6e9dddac3e5" hs_bindgen_3056b6e9dddac3e5 :: + 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:455: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_3056b6e9dddac3e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_ac1a45463b608c22" hs_bindgen_ac1a45463b608c22 :: + 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:464: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_ac1a45463b608c22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_5e69a6ea26781a96" hs_bindgen_5e69a6ea26781a96 :: + 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:473: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_5e69a6ea26781a96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_275048e5b46eba2f" hs_bindgen_275048e5b46eba2f :: + 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:483: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_275048e5b46eba2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_a23fe411148be3a4" hs_bindgen_a23fe411148be3a4 :: + 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:491: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_a23fe411148be3a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_cca9a766f6b432cd" hs_bindgen_cca9a766f6b432cd :: + 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:499: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_cca9a766f6b432cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_734bd5e0528e6f2c" hs_bindgen_734bd5e0528e6f2c :: + 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:509: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_734bd5e0528e6f2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_34efc01712b55673" hs_bindgen_34efc01712b55673 :: + 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:519: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_34efc01712b55673 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_adfb56373edd3900" hs_bindgen_adfb56373edd3900 :: + 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:533: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_adfb56373edd3900 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_2965dd84ae179bb5" hs_bindgen_2965dd84ae179bb5 :: + 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:538: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_2965dd84ae179bb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_d7896a24c7e8f8d4" hs_bindgen_d7896a24c7e8f8d4 :: + 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:543: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_d7896a24c7e8f8d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_bae40dea7b6771d7" hs_bindgen_bae40dea7b6771d7 :: + 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:548: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_bae40dea7b6771d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_b8eb4ae45d6320c2" hs_bindgen_b8eb4ae45d6320c2 :: + 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:553: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_b8eb4ae45d6320c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_89d9f4bddcf9eaca" hs_bindgen_89d9f4bddcf9eaca :: + 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:558: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_89d9f4bddcf9eaca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_a2306a5a37a463a4" hs_bindgen_a2306a5a37a463a4 :: + 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:565: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_a2306a5a37a463a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_ac9540110d79b3c3" hs_bindgen_ac9540110d79b3c3 :: + 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:570: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_ac9540110d79b3c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_d5fa6448b26e2d53" hs_bindgen_d5fa6448b26e2d53 :: + 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:576: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_d5fa6448b26e2d53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_05feb1c9fb6e62e3" hs_bindgen_05feb1c9fb6e62e3 :: + 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:582: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_05feb1c9fb6e62e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_b3bed029ca2b9db0" hs_bindgen_b3bed029ca2b9db0 :: + 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:588:5@ + +__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_b3bed029ca2b9db0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_c6a3e59830329c12" hs_bindgen_c6a3e59830329c12 :: + 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:594:5@ + +__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_c6a3e59830329c12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_708d94e20e63ff24" hs_bindgen_708d94e20e63ff24 :: + 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:599: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_708d94e20e63ff24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_720d9beb1a36aede" hs_bindgen_720d9beb1a36aede :: + 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:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_720d9beb1a36aede + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_5e21c44a07bb4677" hs_bindgen_5e21c44a07bb4677 :: + 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:614: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_5e21c44a07bb4677 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_91138d378b835248" hs_bindgen_91138d378b835248 :: + 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:619: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_91138d378b835248 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_48a3186898798ce8" hs_bindgen_48a3186898798ce8 :: + 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_48a3186898798ce8 + +{-| + + 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:646: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_48a3186898798ce8 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_5b1c6d8813751720" hs_bindgen_5b1c6d8813751720 :: + 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:658:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_5b1c6d8813751720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_9550be6fc92e8a57" hs_bindgen_9550be6fc92e8a57 :: + 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:664:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_9550be6fc92e8a57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_748563f827937498" hs_bindgen_748563f827937498 :: + 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_748563f827937498 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:683: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_748563f827937498 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_6474c618a9ff9c37" hs_bindgen_6474c618a9ff9c37 :: + 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_6474c618a9ff9c37 + +{-| 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:716: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_6474c618a9ff9c37 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_11b3d7bb9df01863" hs_bindgen_11b3d7bb9df01863 :: + 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_11b3d7bb9df01863 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:740: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_11b3d7bb9df01863 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_4637da863c2e8a6d" hs_bindgen_4637da863c2e8a6d :: + 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_4637da863c2e8a6d + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:767: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_4637da863c2e8a6d x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_1770c77f56e46bc9" hs_bindgen_1770c77f56e46bc9 :: + 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_1770c77f56e46bc9 + +{-| 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:786: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_1770c77f56e46bc9 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_36972678b11819a3" hs_bindgen_36972678b11819a3 :: + 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_36972678b11819a3 + +{-| 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:809: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_36972678b11819a3 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_5_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_d7bb44b65ff9cbd3" hs_bindgen_d7bb44b65ff9cbd3 :: + 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:827: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_d7bb44b65ff9cbd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_181fcc31e40808eb" hs_bindgen_181fcc31e40808eb :: + 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:833: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_181fcc31e40808eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_4b26cb0cae7c6227" hs_bindgen_4b26cb0cae7c6227 :: + 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:839: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_4b26cb0cae7c6227 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_5b75fd10fb477d2d" hs_bindgen_5b75fd10fb477d2d :: + 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_5b75fd10fb477d2d + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:844: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_5b75fd10fb477d2d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_070a80f413cdd025" hs_bindgen_070a80f413cdd025 :: + 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:850: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_070a80f413cdd025 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_54cfd9afa54f1271" hs_bindgen_54cfd9afa54f1271 :: + 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_54cfd9afa54f1271 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:856: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_54cfd9afa54f1271 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_457b3db65f6c88d7" hs_bindgen_457b3db65f6c88d7 :: + 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_457b3db65f6c88d7 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:862: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_457b3db65f6c88d7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_3f4cb429979ee03b" hs_bindgen_3f4cb429979ee03b :: + 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:870: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_3f4cb429979ee03b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_e48adab4bbab0278" hs_bindgen_e48adab4bbab0278 :: + 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:880: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_e48adab4bbab0278 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_f3573a921b196fb0" hs_bindgen_f3573a921b196fb0 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:893: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_f3573a921b196fb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_495250a1d1a4daab" hs_bindgen_495250a1d1a4daab :: + 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:899:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_495250a1d1a4daab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_8872c3c86e3cd59c" hs_bindgen_8872c3c86e3cd59c :: + 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:904: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_8872c3c86e3cd59c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_3fd793849af2dabd" hs_bindgen_3fd793849af2dabd :: + 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:909:28@ + +__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_3fd793849af2dabd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_ecadfea32c7d96d6" hs_bindgen_ecadfea32c7d96d6 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:914:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_ecadfea32c7d96d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_4d6547194a0cb2f2" hs_bindgen_4d6547194a0cb2f2 :: + 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:919: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_4d6547194a0cb2f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_bfc4576b6f09c5e5" hs_bindgen_bfc4576b6f09c5e5 :: + 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:924: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_bfc4576b6f09c5e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_117f3dad44b0688a" hs_bindgen_117f3dad44b0688a :: + 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:929: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_117f3dad44b0688a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_322d5aa21d8257ec" hs_bindgen_322d5aa21d8257ec :: + 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:935: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_322d5aa21d8257ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_dfa77c470e46c89d" hs_bindgen_dfa77c470e46c89d :: + 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:940: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_dfa77c470e46c89d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_1e1bf4ed13d0ee54" hs_bindgen_1e1bf4ed13d0ee54 :: + 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:945: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_1e1bf4ed13d0ee54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_16e8cf2005a8486c" hs_bindgen_16e8cf2005a8486c :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:950: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_16e8cf2005a8486c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_4e8f85d74ea9c865" hs_bindgen_4e8f85d74ea9c865 :: + 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_4e8f85d74ea9c865 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:955: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_4e8f85d74ea9c865 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_d5ef2bcc24baf320" hs_bindgen_d5ef2bcc24baf320 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:960: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_d5ef2bcc24baf320 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_40654b8f87a4fc56" hs_bindgen_40654b8f87a4fc56 :: + 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:967: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_40654b8f87a4fc56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_98d80f915bb9ddf2" hs_bindgen_98d80f915bb9ddf2 :: + 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:972: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_98d80f915bb9ddf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_94d5be1f3b3f4bf8" hs_bindgen_94d5be1f3b3f4bf8 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:974: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_94d5be1f3b3f4bf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_01c950df826073e2" hs_bindgen_01c950df826073e2 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:976: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_01c950df826073e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_dd621b50ae151d60" hs_bindgen_dd621b50ae151d60 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:978: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_dd621b50ae151d60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_36d733982576fb62" hs_bindgen_36d733982576fb62 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:979: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_36d733982576fb62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_9d151574c480fc68" hs_bindgen_9d151574c480fc68 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:981: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_9d151574c480fc68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_f47438f3a634c07a" hs_bindgen_f47438f3a634c07a :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:982: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_f47438f3a634c07a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_b11bb5c007e6e3fc" hs_bindgen_b11bb5c007e6e3fc :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:984: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_b11bb5c007e6e3fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_d37dd762e755e823" hs_bindgen_d37dd762e755e823 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:985: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_d37dd762e755e823 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_c8d620e2d3c9e6c0" hs_bindgen_c8d620e2d3c9e6c0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:986: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_c8d620e2d3c9e6c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_d9e460524371291c" hs_bindgen_d9e460524371291c :: + 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:989: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_d9e460524371291c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_042bf758a9f9333f" hs_bindgen_042bf758a9f9333f :: + 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:992: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_042bf758a9f9333f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_eefb191770c7495b" hs_bindgen_eefb191770c7495b :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:999: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_eefb191770c7495b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_83e1d837ed6dd29c" hs_bindgen_83e1d837ed6dd29c :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1006: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_83e1d837ed6dd29c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_7f9ae086a95e6d01" hs_bindgen_7f9ae086a95e6d01 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1011: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_7f9ae086a95e6d01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_5277d3710f66f666" hs_bindgen_5277d3710f66f666 :: + 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:1015: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_5277d3710f66f666 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_6d453ed4fbbc7f9b" hs_bindgen_6d453ed4fbbc7f9b :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1017: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_6d453ed4fbbc7f9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_a01dbb4af9677ed8" hs_bindgen_a01dbb4af9677ed8 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1018: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_a01dbb4af9677ed8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_cecc8d144ea2b350" hs_bindgen_cecc8d144ea2b350 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1020: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_cecc8d144ea2b350 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_b4a5c583a098db34" hs_bindgen_b4a5c583a098db34 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1022: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_b4a5c583a098db34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_2114e9f967ae1b7c" hs_bindgen_2114e9f967ae1b7c :: + 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:1025: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_2114e9f967ae1b7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_0224a9d05bd5f4b3" hs_bindgen_0224a9d05bd5f4b3 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1027: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_0224a9d05bd5f4b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_32691de6e7b442e5" hs_bindgen_32691de6e7b442e5 :: + 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:1034: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_32691de6e7b442e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_3bfc2b0dec040599" hs_bindgen_3bfc2b0dec040599 :: + 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:1041: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_3bfc2b0dec040599 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_4a8cf8d03b6bcc0a" hs_bindgen_4a8cf8d03b6bcc0a :: + 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:1046: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_4a8cf8d03b6bcc0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_fa3838e8a7dbe4c9" hs_bindgen_fa3838e8a7dbe4c9 :: + 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:1051: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_fa3838e8a7dbe4c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_72863022071dc6e7" hs_bindgen_72863022071dc6e7 :: + 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:1069: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_72863022071dc6e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_802f8201f3eef7ae" hs_bindgen_802f8201f3eef7ae :: + 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:1080: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_802f8201f3eef7ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_a6e0ff50e05e4b1a" hs_bindgen_a6e0ff50e05e4b1a :: + 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:1096: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_a6e0ff50e05e4b1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_f214224eafffe679" hs_bindgen_f214224eafffe679 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1100: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_f214224eafffe679 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_7e6485548bc24903" hs_bindgen_7e6485548bc24903 :: + 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:1103: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_7e6485548bc24903 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_3d6f058ae9337ad0" hs_bindgen_3d6f058ae9337ad0 :: + 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:1105: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_3d6f058ae9337ad0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_c7938e4ff2c901f3" hs_bindgen_c7938e4ff2c901f3 :: + 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:1107: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_c7938e4ff2c901f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_36aa74a65d57a5cd" hs_bindgen_36aa74a65d57a5cd :: + 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:1109: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_36aa74a65d57a5cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_497bd55583b7e2ed" hs_bindgen_497bd55583b7e2ed :: + 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:1111: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_497bd55583b7e2ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_d6c23c17abeacf49" hs_bindgen_d6c23c17abeacf49 :: + 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:1131: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_d6c23c17abeacf49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_bfdf258b891ea9b0" hs_bindgen_bfdf258b891ea9b0 :: + 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:1153: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_bfdf258b891ea9b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_2123ea089aa633f7" hs_bindgen_2123ea089aa633f7 :: + 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_2123ea089aa633f7 + +{-| 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:1161: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_2123ea089aa633f7 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_1bcff7c510806c58" hs_bindgen_1bcff7c510806c58 :: + 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:1166:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_1bcff7c510806c58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_2b3468394bde81a9" hs_bindgen_2b3468394bde81a9 :: + 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:1178: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_2b3468394bde81a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_b44310352210a45a" hs_bindgen_b44310352210a45a :: + 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:1183: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_b44310352210a45a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_7c5cd1d8eb99a811" hs_bindgen_7c5cd1d8eb99a811 :: + 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:1188: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_7c5cd1d8eb99a811 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_eb6fbad3738a03d5" hs_bindgen_eb6fbad3738a03d5 :: + 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:1190: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_eb6fbad3738a03d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_bce5a422b14db329" hs_bindgen_bce5a422b14db329 :: + 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:1197: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_bce5a422b14db329 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_bab43bc95b5c5e8c" hs_bindgen_bab43bc95b5c5e8c :: + 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:1212: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_bab43bc95b5c5e8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_9163263ed1817341" hs_bindgen_9163263ed1817341 :: + 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:1227: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_9163263ed1817341 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_1e6fa46125c32bc5" hs_bindgen_1e6fa46125c32bc5 :: + 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:1244: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_1e6fa46125c32bc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_36eea71a2013b3dd" hs_bindgen_36eea71a2013b3dd :: + 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:1259: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_36eea71a2013b3dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_d5315ef61e80686d" hs_bindgen_d5315ef61e80686d :: + 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:1275: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_d5315ef61e80686d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_1fabd776045c0dc4" hs_bindgen_1fabd776045c0dc4 :: + 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:1290: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_1fabd776045c0dc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_ec4e876509be88b5" hs_bindgen_ec4e876509be88b5 :: + 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_ec4e876509be88b5 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1301: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_ec4e876509be88b5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_ca6e45f5774d68c7" hs_bindgen_ca6e45f5774d68c7 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1303: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_ca6e45f5774d68c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_1408d805af6cb6d0" hs_bindgen_1408d805af6cb6d0 :: + 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:1305: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_1408d805af6cb6d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_9b9b50e315c3cc10" hs_bindgen_9b9b50e315c3cc10 :: + 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:1310: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_9b9b50e315c3cc10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_8535c1c0b9ed7e1c" hs_bindgen_8535c1c0b9ed7e1c :: + 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:1315: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_8535c1c0b9ed7e1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_d939cad55b11f74a" hs_bindgen_d939cad55b11f74a :: + 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:1317: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_d939cad55b11f74a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_b76c0f2727316f9e" hs_bindgen_b76c0f2727316f9e :: + 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:1322: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_b76c0f2727316f9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_0222b9f30b98b0af" hs_bindgen_0222b9f30b98b0af :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1324: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_0222b9f30b98b0af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_351eaccb0f2e8042" hs_bindgen_351eaccb0f2e8042 :: + 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:1327: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_351eaccb0f2e8042 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_6d2488a3f62a42c4" hs_bindgen_6d2488a3f62a42c4 :: + 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:1332:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_6d2488a3f62a42c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_569393759daa850f" hs_bindgen_569393759daa850f :: + 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:1337: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_569393759daa850f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_a8ba4804d0a305f3" hs_bindgen_a8ba4804d0a305f3 :: + 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:1339: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_a8ba4804d0a305f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_f5a04122c84e1d90" hs_bindgen_f5a04122c84e1d90 :: + 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:1344: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_f5a04122c84e1d90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_a4e3eea366464ff3" hs_bindgen_a4e3eea366464ff3 :: + 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_a4e3eea366464ff3 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1346: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_a4e3eea366464ff3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_f5ccb567955307d9" hs_bindgen_f5ccb567955307d9 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1349: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_f5ccb567955307d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_1577a1cf633b1389" hs_bindgen_1577a1cf633b1389 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1351: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_1577a1cf633b1389 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_0c668cc9108bd8e2" hs_bindgen_0c668cc9108bd8e2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1353: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_0c668cc9108bd8e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_0257478a55f91160" hs_bindgen_0257478a55f91160 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1355: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_0257478a55f91160 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_5b62e97c012ef0b8" hs_bindgen_5b62e97c012ef0b8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1357: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_5b62e97c012ef0b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_54a160a72e944383" hs_bindgen_54a160a72e944383 :: + 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:1360: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_54a160a72e944383 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_fb96c90c5506eda5" hs_bindgen_fb96c90c5506eda5 :: + 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:1362: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_fb96c90c5506eda5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_77d3043b98688609" hs_bindgen_77d3043b98688609 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1365: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_77d3043b98688609 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_567792e083d52b99" hs_bindgen_567792e083d52b99 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1367: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_567792e083d52b99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_5c53991ef7622722" hs_bindgen_5c53991ef7622722 :: + 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:1373: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_5c53991ef7622722 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_15918825b1e9886f" hs_bindgen_15918825b1e9886f :: + 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:1376: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_15918825b1e9886f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_6d7d7ee675926add" hs_bindgen_6d7d7ee675926add :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1379: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_6d7d7ee675926add + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_8216ef467b63149b" hs_bindgen_8216ef467b63149b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1382: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_8216ef467b63149b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_39b52dde4bca271e" hs_bindgen_39b52dde4bca271e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1384: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_39b52dde4bca271e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_6681827fcf1ef7f9" hs_bindgen_6681827fcf1ef7f9 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1386: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_6681827fcf1ef7f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_96c250ddefb63416" hs_bindgen_96c250ddefb63416 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1388: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_96c250ddefb63416 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_b2ac87e41cea9459" hs_bindgen_b2ac87e41cea9459 :: + 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:1403: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_b2ac87e41cea9459 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_62a3e48392dd932d" hs_bindgen_62a3e48392dd932d :: + 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:1417: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_62a3e48392dd932d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_8f86783ad404479e" hs_bindgen_8f86783ad404479e :: + 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:1435: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_8f86783ad404479e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_895b784873c2bcdc" hs_bindgen_895b784873c2bcdc :: + 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:1450: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_895b784873c2bcdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_20603efb5525e0e9" hs_bindgen_20603efb5525e0e9 :: + 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_20603efb5525e0e9 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1456: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_20603efb5525e0e9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_de01b41a85d321b0" hs_bindgen_de01b41a85d321b0 :: + 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_de01b41a85d321b0 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1458: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_de01b41a85d321b0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_05f805da8ddc0239" hs_bindgen_05f805da8ddc0239 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1460: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_05f805da8ddc0239 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_75e9859b09c803f9" hs_bindgen_75e9859b09c803f9 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1462: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_75e9859b09c803f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_6e79a915385d86d1" hs_bindgen_6e79a915385d86d1 :: + 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_6e79a915385d86d1 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1468: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_6e79a915385d86d1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_7d9fd6378f7bbc91" hs_bindgen_7d9fd6378f7bbc91 :: + 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_7d9fd6378f7bbc91 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1470: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_7d9fd6378f7bbc91 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_e1c0681269d27a79" hs_bindgen_e1c0681269d27a79 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1472: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_e1c0681269d27a79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3f123f6cbb2b9e0e" hs_bindgen_3f123f6cbb2b9e0e :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1474: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_3f123f6cbb2b9e0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_b60a232edd930b15" hs_bindgen_b60a232edd930b15 :: + 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_b60a232edd930b15 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1480: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_b60a232edd930b15 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_ebd6d336efda6c71" hs_bindgen_ebd6d336efda6c71 :: + 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_ebd6d336efda6c71 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1482: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_ebd6d336efda6c71 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_9c6120f80ab8b9cb" hs_bindgen_9c6120f80ab8b9cb :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1484: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_9c6120f80ab8b9cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_be6b53bfdc440034" hs_bindgen_be6b53bfdc440034 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1486: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_be6b53bfdc440034 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_2bec0876de6af5ea" hs_bindgen_2bec0876de6af5ea :: + 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_2bec0876de6af5ea + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1492: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_2bec0876de6af5ea x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_ee4b85337828955f" hs_bindgen_ee4b85337828955f :: + 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_ee4b85337828955f + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1494: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_ee4b85337828955f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_851810f8529dc860" hs_bindgen_851810f8529dc860 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1496: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_851810f8529dc860 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_7854615e67b6ea02" hs_bindgen_7854615e67b6ea02 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1498: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_7854615e67b6ea02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_eac752913470e64a" hs_bindgen_eac752913470e64a :: + 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_eac752913470e64a + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1504: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_eac752913470e64a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_af73eabf59312f14" hs_bindgen_af73eabf59312f14 :: + 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_af73eabf59312f14 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1506: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_af73eabf59312f14 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_ea5e67738d72b92d" hs_bindgen_ea5e67738d72b92d :: + 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:1509: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_ea5e67738d72b92d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_d103b0b18d4d2678" hs_bindgen_d103b0b18d4d2678 :: + 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:1512: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_d103b0b18d4d2678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_44f5d0ac82bca1d2" hs_bindgen_44f5d0ac82bca1d2 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1518: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_44f5d0ac82bca1d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_0c70a224ff6c5e66" hs_bindgen_0c70a224ff6c5e66 :: + 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:1521: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_0c70a224ff6c5e66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_1ab4d90cf632ccc3" hs_bindgen_1ab4d90cf632ccc3 :: + 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:1524: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_1ab4d90cf632ccc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_586b90519c480ab9" hs_bindgen_586b90519c480ab9 :: + 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:1527: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_586b90519c480ab9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_f9355f8cef77ec1f" hs_bindgen_f9355f8cef77ec1f :: + 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:1530: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_f9355f8cef77ec1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_72c767b0419cb321" hs_bindgen_72c767b0419cb321 :: + 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:1533: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_72c767b0419cb321 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_b085f808d4216147" hs_bindgen_b085f808d4216147 :: + 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:1536: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_b085f808d4216147 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_99ca57f71e839bc6" hs_bindgen_99ca57f71e839bc6 :: + 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:1540: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_99ca57f71e839bc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_2e1939ed6a288baa" hs_bindgen_2e1939ed6a288baa :: + 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:1544: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_2e1939ed6a288baa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_8ecb7a7aed4afd70" hs_bindgen_8ecb7a7aed4afd70 :: + 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:1547: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_8ecb7a7aed4afd70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_82fc064e369e4aaf" hs_bindgen_82fc064e369e4aaf :: + 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:1554: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_82fc064e369e4aaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_a18a02d8153de0fd" hs_bindgen_a18a02d8153de0fd :: + 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:1562: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_a18a02d8153de0fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_562f00b11795dd29" hs_bindgen_562f00b11795dd29 :: + 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:1567: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_562f00b11795dd29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_3ea18dd57c794d6a" hs_bindgen_3ea18dd57c794d6a :: + 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:1570: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_3ea18dd57c794d6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_87b42d64a21f1f70" hs_bindgen_87b42d64a21f1f70 :: + 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_87b42d64a21f1f70 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1573: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_87b42d64a21f1f70 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_cbdefb8ff78b635a" hs_bindgen_cbdefb8ff78b635a :: + 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:1586: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_cbdefb8ff78b635a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_032ff45446b5a270" hs_bindgen_032ff45446b5a270 :: + 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:1591: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_032ff45446b5a270 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_153505c1548177c6" hs_bindgen_153505c1548177c6 :: + 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:1594: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_153505c1548177c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_5b84c6bcbd9afc8b" hs_bindgen_5b84c6bcbd9afc8b :: + 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_5b84c6bcbd9afc8b + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1597: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_5b84c6bcbd9afc8b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_75a2020c8bfe74a8" hs_bindgen_75a2020c8bfe74a8 :: + 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:1609: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_75a2020c8bfe74a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_b38bc365c764ceae" hs_bindgen_b38bc365c764ceae :: + 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:1614: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_b38bc365c764ceae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_7c8cd107b82eee2d" hs_bindgen_7c8cd107b82eee2d :: + 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:1616: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_7c8cd107b82eee2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_cf88036626b39c4e" hs_bindgen_cf88036626b39c4e :: + 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_cf88036626b39c4e + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1618: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_cf88036626b39c4e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_169689397775dfde" hs_bindgen_169689397775dfde :: + 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:1621: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_169689397775dfde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_1d24e60dc8928de3" hs_bindgen_1d24e60dc8928de3 :: + 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:1629: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_1d24e60dc8928de3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_1d6380a06950e9d5" hs_bindgen_1d6380a06950e9d5 :: + 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:1637: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_1d6380a06950e9d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_d7443654ff1963f8" hs_bindgen_d7443654ff1963f8 :: + 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_d7443654ff1963f8 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1639: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_d7443654ff1963f8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_415f63beb48250e2" hs_bindgen_415f63beb48250e2 :: + 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_415f63beb48250e2 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1640: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_415f63beb48250e2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_f3b6a2f00c386c4e" hs_bindgen_f3b6a2f00c386c4e :: + 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:1648: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_f3b6a2f00c386c4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_48a4864f4bb88e41" hs_bindgen_48a4864f4bb88e41 :: + 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:1653: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_48a4864f4bb88e41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_94198138880ab28e" hs_bindgen_94198138880ab28e :: + 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:1655: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_94198138880ab28e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_015a720dced34e23" hs_bindgen_015a720dced34e23 :: + 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:1658: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_015a720dced34e23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_ba3383e7d0cde586" hs_bindgen_ba3383e7d0cde586 :: + 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:1660: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_ba3383e7d0cde586 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_1b1d73d6461c79b6" hs_bindgen_1b1d73d6461c79b6 :: + 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_1b1d73d6461c79b6 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1663: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_1b1d73d6461c79b6 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_46da959a6ff96394" hs_bindgen_46da959a6ff96394 :: + 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:1677: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_46da959a6ff96394 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_56ae0a8d1ebcc1d2" hs_bindgen_56ae0a8d1ebcc1d2 :: + 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:1682: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_56ae0a8d1ebcc1d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_10c1a395fffc6776" hs_bindgen_10c1a395fffc6776 :: + 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:1685: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_10c1a395fffc6776 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_c84faa4f3266f813" hs_bindgen_c84faa4f3266f813 :: + 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:1690: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_c84faa4f3266f813 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_ec16886184be81d2" hs_bindgen_ec16886184be81d2 :: + 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_ec16886184be81d2 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1694: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_ec16886184be81d2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_992c81bd5c639b66" hs_bindgen_992c81bd5c639b66 :: + 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:1707: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_992c81bd5c639b66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_b5295523eff6db0f" hs_bindgen_b5295523eff6db0f :: + 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:1712: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_b5295523eff6db0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_fd238d18e33ceb98" hs_bindgen_fd238d18e33ceb98 :: + 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:1715: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_fd238d18e33ceb98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_a5827ac868ea1bc9" hs_bindgen_a5827ac868ea1bc9 :: + 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_a5827ac868ea1bc9 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1720: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_a5827ac868ea1bc9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_a3aff22e8fe6a4bc" hs_bindgen_a3aff22e8fe6a4bc :: + 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:1733: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_a3aff22e8fe6a4bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_c9e22af91bdec6cf" hs_bindgen_c9e22af91bdec6cf :: + 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_c9e22af91bdec6cf + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1740: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_c9e22af91bdec6cf x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_57c2ec7f730d37a5" hs_bindgen_57c2ec7f730d37a5 :: + 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_57c2ec7f730d37a5 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1755: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_57c2ec7f730d37a5 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_632bb7b2245ba696" hs_bindgen_632bb7b2245ba696 :: + 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_632bb7b2245ba696 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1770: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_632bb7b2245ba696 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_df709750119eb969" hs_bindgen_df709750119eb969 :: + 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:1771: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_df709750119eb969 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_060bc19cc61b68a8" hs_bindgen_060bc19cc61b68a8 :: + 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:1776: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_060bc19cc61b68a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_afe56fa55ac481c6" hs_bindgen_afe56fa55ac481c6 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1778: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_afe56fa55ac481c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_73a43022e59a7cba" hs_bindgen_73a43022e59a7cba :: + 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:1781: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_73a43022e59a7cba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_fd7a185fc731b797" hs_bindgen_fd7a185fc731b797 :: + 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:1782: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_fd7a185fc731b797 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_b626dc6eaa8455c1" hs_bindgen_b626dc6eaa8455c1 :: + 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:1784: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_b626dc6eaa8455c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_60c555a446ad8920" hs_bindgen_60c555a446ad8920 :: + 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:1785: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_60c555a446ad8920 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_d13d31549951c95f" hs_bindgen_d13d31549951c95f :: + 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:1788: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_d13d31549951c95f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_a1b08bf84f95e3cb" hs_bindgen_a1b08bf84f95e3cb :: + 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:1790: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_a1b08bf84f95e3cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_1d5c331807281d00" hs_bindgen_1d5c331807281d00 :: + 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:1791: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_1d5c331807281d00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_22577d08d6cd53d7" hs_bindgen_22577d08d6cd53d7 :: + 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:1792: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_22577d08d6cd53d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_0cb39c09ae425c9d" hs_bindgen_0cb39c09ae425c9d :: + 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:1794: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_0cb39c09ae425c9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_33be838ca21fae91" hs_bindgen_33be838ca21fae91 :: + 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:1797: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_33be838ca21fae91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_0c2ab0368aeac462" hs_bindgen_0c2ab0368aeac462 :: + 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:1799: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_0c2ab0368aeac462 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_d1e04fb75c73068c" hs_bindgen_d1e04fb75c73068c :: + 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:1802: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_d1e04fb75c73068c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_fda639931c2ba1a3" hs_bindgen_fda639931c2ba1a3 :: + 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:1806: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_fda639931c2ba1a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_ab832c5398beeeaa" hs_bindgen_ab832c5398beeeaa :: + 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:1809: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_ab832c5398beeeaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_8d4f3018663b683e" hs_bindgen_8d4f3018663b683e :: + 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:1812: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_8d4f3018663b683e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_43f8402f14d6e7ed" hs_bindgen_43f8402f14d6e7ed :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1828: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_43f8402f14d6e7ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_5e4481649bedaad4" hs_bindgen_5e4481649bedaad4 :: + 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:1834: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_5e4481649bedaad4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_00ec8043ee2ae7b7" hs_bindgen_00ec8043ee2ae7b7 :: + 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: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_00ec8043ee2ae7b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_e9d82f589de4188b" hs_bindgen_e9d82f589de4188b :: + 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:1860: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_e9d82f589de4188b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_62ae5d7115befbdf" hs_bindgen_62ae5d7115befbdf :: + 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:1868: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_62ae5d7115befbdf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_2bec8e6ee54ae73b" hs_bindgen_2bec8e6ee54ae73b :: + 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_2bec8e6ee54ae73b + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1870: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_2bec8e6ee54ae73b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_6143208f7871a79b" hs_bindgen_6143208f7871a79b :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1872: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_6143208f7871a79b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_d415ccdec2362eea" hs_bindgen_d415ccdec2362eea :: + 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: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_d415ccdec2362eea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_e1ade9f741cef15b" hs_bindgen_e1ade9f741cef15b :: + 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:1885: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_e1ade9f741cef15b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_28382f1d53d4b89b" hs_bindgen_28382f1d53d4b89b :: + 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_28382f1d53d4b89b + +{-| 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_28382f1d53d4b89b (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_8a468d5ebd89ecaf" hs_bindgen_8a468d5ebd89ecaf :: + 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_8a468d5ebd89ecaf + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1912: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_8a468d5ebd89ecaf (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_48dff650f7111393" hs_bindgen_48dff650f7111393 :: + 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_48dff650f7111393 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1920: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_48dff650f7111393 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_0eba86677560bbf5" hs_bindgen_0eba86677560bbf5 :: + 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_0eba86677560bbf5 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1930: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_0eba86677560bbf5 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_ed3b06b4397b9cfb" hs_bindgen_ed3b06b4397b9cfb :: + 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_ed3b06b4397b9cfb + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1949: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_ed3b06b4397b9cfb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_e6a85c06af8d140c" hs_bindgen_e6a85c06af8d140c :: + 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:1956:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_e6a85c06af8d140c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_e6e1735481d7112d" hs_bindgen_e6e1735481d7112d :: + 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:1962: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_e6e1735481d7112d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_5cda29c9ae059003" hs_bindgen_5cda29c9ae059003 :: + 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:1968: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_5cda29c9ae059003 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_3b4411970a07693f" hs_bindgen_3b4411970a07693f :: + 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_3b4411970a07693f + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1981: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_3b4411970a07693f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_33417c18673a9bd5" hs_bindgen_33417c18673a9bd5 :: + 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:1989:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_33417c18673a9bd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_47f941a8252e147d" hs_bindgen_47f941a8252e147d :: + 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:1998: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_47f941a8252e147d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_5d729b4cd225242d" hs_bindgen_5d729b4cd225242d :: + 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_5d729b4cd225242d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_91e92bf354bbfef4" hs_bindgen_91e92bf354bbfef4 :: + 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_91e92bf354bbfef4 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2020: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_91e92bf354bbfef4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_0e2f23715babaaad" hs_bindgen_0e2f23715babaaad :: + 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:2027:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_0e2f23715babaaad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_db19f500d9961359" hs_bindgen_db19f500d9961359 :: + 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_db19f500d9961359 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2030: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_db19f500d9961359 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_b74679c5da2b1192" hs_bindgen_b74679c5da2b1192 :: + 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_b74679c5da2b1192 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2033: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_b74679c5da2b1192 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_06f62ee56d7cf8e3" hs_bindgen_06f62ee56d7cf8e3 :: + 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:2045: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_06f62ee56d7cf8e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_00cc1dbfe709e0d0" hs_bindgen_00cc1dbfe709e0d0 :: + 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:2053: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_00cc1dbfe709e0d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_db5c0893bd910049" hs_bindgen_db5c0893bd910049 :: + 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_db5c0893bd910049 + +{-| 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:2068: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_db5c0893bd910049 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_689f75c4dff580d5" hs_bindgen_689f75c4dff580d5 :: + 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_689f75c4dff580d5 + +{-| 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:2087: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_689f75c4dff580d5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_049eaca7f92f6e0d" hs_bindgen_049eaca7f92f6e0d :: + 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_049eaca7f92f6e0d + +{-| 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:2103: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_049eaca7f92f6e0d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_c5b9c91f1fa17604" hs_bindgen_c5b9c91f1fa17604 :: + 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_c5b9c91f1fa17604 + +{-| 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:2130: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_c5b9c91f1fa17604 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_5_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_7807733d7bf4e210" hs_bindgen_7807733d7bf4e210 :: + 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:2148: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_7807733d7bf4e210 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_e0c16775c1192e75" hs_bindgen_e0c16775c1192e75 :: + 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:2169: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_e0c16775c1192e75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_5_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_9c0b0eed1d69480a" hs_bindgen_9c0b0eed1d69480a :: + 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:2190: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_9c0b0eed1d69480a diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0.hs new file mode 100644 index 00000000..6b3f8ab5 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0.hs @@ -0,0 +1,1584 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_6_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:71:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20240408 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:113: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 + +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") + , (-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:114: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:115: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:117: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:118: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:120: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:121: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:123: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:124: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:125: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:126: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:128: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:129: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:130: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:131: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:132: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:133: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:135: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:136: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:138: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:139: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:140: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:141: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:143: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:146: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' + +__defined at:__ @botan\/ffi.h:155:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:155: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:164:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:164: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:237:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:272:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:272: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:360:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:360: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:440:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:440: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:536:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:536: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:538: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:539: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:540: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:633: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:834:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:834: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:900:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:900: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1097:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1097: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:1110: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:1180: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:1181: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:1182:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1317:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1317: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1624:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1624: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1648:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1648: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:1669:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1671:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1671: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1691:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1691: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1710:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1710: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1739: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:1739: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1769: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:1769: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1833:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1833: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1880: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 + +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:1881: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:1882: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:1883: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:1884: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:1885: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:1886: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:1887: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:1888: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:1889: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:1890: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1931:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1931: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2008:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2008: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2040:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2040: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2080:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2080: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:2082: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2103: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:2103: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2261:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2261: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2266:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2266: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 + +-- | __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_6_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/FunPtr.hs new file mode 100644 index 00000000..bdcf81b7 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/FunPtr.hs @@ -0,0 +1,9110 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_6_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_6_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_6_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_d3e26cb1e3fa4bac (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_1976ece43120f980 (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_5378f3bd6ef345a5 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_62f8b9cc9422bc17 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_638f1302132044b1 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_054a320ff2c015f4 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_48b612a810dcbd3a (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_8c904a7ab6dc20f6 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_b2e7ea77dd96294c (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12f68d0b9a4b8f2e (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_078655dbe19f56fc (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e059a4f60590740 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4bdbf7b24fbd23d (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08b4aaed5cccb94f (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_61a2270664ead2a4 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14a88352bd988215 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_164b01ed607744d3 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82c2013f97d60006 (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_6_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df2db463b3ee54c6 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f8063dd977b0e22 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01472157521a6d11 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b0c0dff80460eef (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e5197d861db9eeda (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e71eeb22b30d2f5 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e16ab93c2e2ff615 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5960962fc3cfe384 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1863de8dfa035c38 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f60c6f72451e286 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6bf0e80a411f3ee (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea07ffba0a0dd9c7 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_631f2f5b1c89354a (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e85b0874371016c2 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51b0bf9c51f9a589 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5efb29f3e31c1471 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf6afa24aa44322c (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f397ca9e470b5f83 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3d6f17d979386ea (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_152122589fff2e3e (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82cda72506d8048d (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a359483fb176aaf4 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1772eed3a8b07c8e (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_621c3a33a30471cb (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_6_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_91d287efbcc48e1c (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b06d37fe4820acf8 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cba6ec4ccddf36c6 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3f8a613ea5d8224 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b4f2ff6daf27bed (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0936644dd4ebe68a (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3e0d4bbbcdf6194 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f700204edfe1d629 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_383ea70f503d5dea (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec77eb5f0e2a561a (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_227dd075f8b0a2b1 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e75712470585d126 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b0e2c8b353b7f46a (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_6_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_424a76bd7835770a (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a05b554b4daf129b (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_738a629dd1a3ce22 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e38a5b6631d5a24f (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_46491098c8851b2c (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_6_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4209c8c7eadd12f1 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb6f6de00cee12af (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98ed58f552bc660f (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_6_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_620a7313ec5d21aa (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_6_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73794f9906c3f61b (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_6_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b7744d650fdb3a8 (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_6_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca552ac9c89c9458 (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_6_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_692e5483c1f23bd6 (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_6_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb7b3ae488938f9f (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a425e7b730749317 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28e1f58198cd31bf (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_351b99eb933eb431 (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_6_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90454636283ecc8f (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_91c2073d2d576621 (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_6_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd070b3782d390e3 (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_6_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d11a7c745e873d2 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c761378c6f419f4d (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_6_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0f94039b011a732f (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3275f637c8e3a73 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f087cd4a09fce5e4 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0fb15da5b4712aa2 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bd6fee47c8ded62 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0da127b33a99f085 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc2ffaa5ceda3903 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c8adfe2367f921c (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_67a61b2ec9e8ef35 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71ceba2dd0b1c9d2 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc81a5dc36be5662 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e5bc0f2f676ca448 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6458df2be9e3a26d (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_790ec18b0a3dbf55 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e854c3f58e4f1328 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d66c5f88427a522 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01ddfd43093538dd (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6735b15fd889f51 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51c25e44cfec8113 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42d62b4f816099a3 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_518f0f6ed8c481fd (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19de18f3571a1096 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_669738d143c47f0c (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc4a4dcecb9c2d28 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23ea6e868fa999dd (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5aa08fab18e0754 (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_6_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2bf08668e0b8a8e (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_6_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_341031bf085073f5 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a75e0cce923c78e (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49c063e76fb83af4 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9a3a1740e60a47c (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_6_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4004447575a0ee2 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f71678ecf9134077 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18186c7f30f1734e (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7f3a9438bcb4c08 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_798da1a0ad3cddfb (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_6_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3504c67d00e8e0a0 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3198f9aa69ac9035 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7fc924b2beab9239 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b3be3cbcf2f307f (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ac247d6dd7482da (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e91cae0b0a48f11 (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_6_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ce66e4201436907 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39425cf18c426f9f (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_6_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aad563380cc85cfe (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0fdef7e59808db0 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_601d3dc04242d9a4 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8e751ac5d554520 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_91e1ceb8428b85fd (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_6_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5a532a397bdd391 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7dd5c1c9bc3cfca (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_6_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3e944ac0241707d (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_6_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72cfaea861df9767 (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_6_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0f6ea14848e7a3a0 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5afb5703c41cda69 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_100fd9d88df6ea74 (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_6_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e49f500e0838af9 (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_6_0_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3c5a20659b712b1 (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_6_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f2851677a963234 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73224af872cb6c31 (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_6_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7aea13b7b4aa59d (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_6_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bb9d0c8de375868 (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_6_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b1aafa77620d78b (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_6_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c08d8e213c7954d (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_6_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7239f000349dee77 (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_6_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de46e3f464163190 (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_6_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b39b0cc91e34ed50 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37f797bafdb20b44 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3b9b92a7c241e33 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52742075401e3137 (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_6_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cab53c21b2cc953b (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_6_0_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26d35fb752684ebf (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_6_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_caa3feaf51078a74 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de19ac4feb8d0932 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b0472ad934302a16 (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16090140bc6508c7 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d3eb03e691e30f54 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7864142fb7135f4c (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c8bfe1f31ab26f3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a58f50bed6f6cf13 (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_6_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6cc0f9bae5ee8eca (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2103332e5e6e7c96 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52c750727b08aae5 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8092cd0fa00a8efa (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48b0b22920ebc88c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3024ec1161abae9 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d723c5dabb39fd7 (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_6_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0f9249d3b45b28e (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b4bdd5e64da1a9d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c4064be03ea41a8 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b932f4e4c20b8c30 (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_6_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22beac61236b3e5b (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_6_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44ebd19d6b39cfc8 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_089303f1b5125d8a (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_047716842a019f2d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d3fa72b132fa178 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_974f106c68412a40 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f33469537729ff72 (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_6_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f0d717499c289f92 (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_6_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69d8f92eeb492684 (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_6_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e0839ec8addf406 (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_6_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e5a56818115f46eb (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_721a9dd62469da6f (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81b4990dcea8ce09 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d881c989642bd5d (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7609fc51fb6c5ecc (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7474a7673b37ea8c (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40a0b11df30fa2b3 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1bca79b3488c669b (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c91ef3379967a97 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec8f629ea2735056 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41f5bd07cfb2bf30 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5123119ee3a17b3 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f40e71e511bd7446 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eabd50c2a5e8d038 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75452febd049471e (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d827396d3eec4127 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f09f9f2a939509de (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_6_0_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab52c7cefd929f29 (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_6_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7601fc771af19ea7 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d6072f10a708bee (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59e5ae971dca563d (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_6_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4f53af74bbad5127 (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_6_0_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c819a2fc6d27cbfb (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_6_0_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a70deb96ea87cd9b (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_6_0_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81cb916b1a0e97db (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_6_0_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec1f203dde8d2d73 (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_6_0_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd033b0e0505b531 (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_6_0_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bb5c1938df7c823 (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_6_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb00b9a3cc75beee (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7c291fa62c83b7c (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd1bf73a90b3a26e (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_6_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd71b3c6d893408c (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_6_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dccd954a647ef07c (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6dee366065ccaf24 (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_6_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08d38e56f2fd3ce3 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49c8b77571b72e44 (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_6_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_314228e630ee10bc (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb8067ca7365dbab (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_6_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b941c206b43127fd (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_6_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d61993943d67c78 (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_6_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36caba58cc08f9a8 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01be0adb18208d6c (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_6_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc44f9d8d66e5ef6 (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_6_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3cd887e1ae187d5e (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_6_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6143c859e1f7bc44 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_80832be31389a403 (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_6_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ff507b896d91a62 (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_6_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f31617ed92f39c0 (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_6_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86cfe481c08d0ddf (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff923f43fedaa23b (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c739eef412344faa (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_6_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bc13e6f95763d2d (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_6_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4dd12cbaf17eaba8 (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_6_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53bee9b420c3fedb (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_154f3335071413b2 (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_6_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7f0a97f1a5c2f84 (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_6_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7ad40be4998a8ed (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_6_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33d0e2dc1d393846 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8eef3d6f45e96c64 (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_6_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b809204ed5ef7db (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_6_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d53a1e08389c878 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6528c3db8f6b3bf (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_6_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb7b02a3098e4e5e (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_6_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_733776be2a7a4090 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41407de6cc6fc4ea (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_6_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe8fc2faf03dbae3 (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_6_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dbbd4cd04c957ab2 (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_6_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5c51f0cab6258a6 (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_6_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70b9e78edad1a39b (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_965675bc9e32bc7f (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_6_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d74880b931e67bde (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_6_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_382ff30202ec7971 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36ae9a101d51ada0 (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_6_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9930154d7e21739c (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_6_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_052ebc0299f1c7d0 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5393d8dd14b20301 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fde02fc3504f21b7 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea79bb0160e5072c (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ba250c244854e85 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_406000c35c1c1cf1 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20d03369e344791e (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_730f45b4a28a9d7b (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9eafed8f59e7529b (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_6_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0142e20361a4141f (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_6_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1c0e373fd998d5c (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_6_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bdecc535fd1c63f (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_6_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73bc3728f1d91fb8 (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_6_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ef3ead28d4e9f4e (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_6_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28386f66d0b0f056 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d53831afe9a11cf (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_6_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef25ade541dffef6 (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_6_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5bc4fc57830146eb (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a59c250dde94166 (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_6_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_009b781b9f13d079 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a67d45349b6a33d9 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e56c92903ce893d6 (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_6_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_bd427015899587f9 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75980d4f09b98f31 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57a878d0f8588838 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6120f1dfb28ae62 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cfea80b640b5b035 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e5bed3c2d2a73ab7 (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_6_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fe393026c563ce4 (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_6_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e5b56de02fee95d (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_6_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_107877f6363a4be2 (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_6_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2cc46041005a15d6 (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_6_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5456a83bfcdca7ea (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_6_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df01607a57de6883 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d14428168a3d6e0c (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15adf1109ceae173 (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_6_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00ad445b0d32a1dc (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_6_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95b16d30848974e4 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6171cd32da3e2c0 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3ded62e6263398c (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a859a6b7a1e368ae (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_6_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90d587ebde2841e8 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_015827ae090979af (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_6_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1531c0ebea444142 (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_6_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28ce581020993417 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c620ee2253fc829b (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b524d3b8e156e793 (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_6_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25a8e89933789e69 (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_6_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba71a17d9db4b4f7 (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_6_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6dd6bb9280bafcdc (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_6_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a48a933ebe49a667 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75d97c7f30c7d9d3 (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_6_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e2821799c5bbb92 (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_6_0_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd715b3bbeb1dca9 (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50816ff5d09de5ce (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3822ddea4eaae4c2 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ef77bbfb1ccded8 (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01baf8f50da08b90 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_469897072718f1aa (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_6_0_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6dfcc60ba9d0da7 (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18d0be45025695a4 (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_d3e26cb1e3fa4bac" hs_bindgen_d3e26cb1e3fa4bac :: + 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:170: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_d3e26cb1e3fa4bac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_1976ece43120f980" hs_bindgen_1976ece43120f980 :: + 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:179: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_1976ece43120f980 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_5378f3bd6ef345a5" hs_bindgen_5378f3bd6ef345a5 :: + 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:186: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_5378f3bd6ef345a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_62f8b9cc9422bc17" hs_bindgen_62f8b9cc9422bc17 :: + 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:192: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_62f8b9cc9422bc17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_638f1302132044b1" hs_bindgen_638f1302132044b1 :: + 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:197: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_638f1302132044b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_054a320ff2c015f4" hs_bindgen_054a320ff2c015f4 :: + 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:202: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_054a320ff2c015f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_48b612a810dcbd3a" hs_bindgen_48b612a810dcbd3a :: + 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:207: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_48b612a810dcbd3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_8c904a7ab6dc20f6" hs_bindgen_8c904a7ab6dc20f6 :: + 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:212: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_8c904a7ab6dc20f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_b2e7ea77dd96294c" hs_bindgen_b2e7ea77dd96294c :: + 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:218: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_b2e7ea77dd96294c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_12f68d0b9a4b8f2e" hs_bindgen_12f68d0b9a4b8f2e :: + 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:223: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_12f68d0b9a4b8f2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_078655dbe19f56fc" hs_bindgen_078655dbe19f56fc :: + 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:229: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_078655dbe19f56fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_6e059a4f60590740" hs_bindgen_6e059a4f60590740 :: + 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:235: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_6e059a4f60590740 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_f4bdbf7b24fbd23d" hs_bindgen_f4bdbf7b24fbd23d :: + 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:247: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_f4bdbf7b24fbd23d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_08b4aaed5cccb94f" hs_bindgen_08b4aaed5cccb94f :: + 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:257: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_08b4aaed5cccb94f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_61a2270664ead2a4" hs_bindgen_61a2270664ead2a4 :: + 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:262: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_61a2270664ead2a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_14a88352bd988215" hs_bindgen_14a88352bd988215 :: + 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:267: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_14a88352bd988215 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_164b01ed607744d3" hs_bindgen_164b01ed607744d3 :: + 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:284: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_164b01ed607744d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_82c2013f97d60006" hs_bindgen_82c2013f97d60006 :: + 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:296: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_82c2013f97d60006 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_df2db463b3ee54c6" hs_bindgen_df2db463b3ee54c6 :: + 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:310: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_df2db463b3ee54c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_9f8063dd977b0e22" hs_bindgen_9f8063dd977b0e22 :: + 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:318: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_9f8063dd977b0e22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_01472157521a6d11" hs_bindgen_01472157521a6d11 :: + 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:328: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_01472157521a6d11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_1b0c0dff80460eef" hs_bindgen_1b0c0dff80460eef :: + 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:338: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_1b0c0dff80460eef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_e5197d861db9eeda" hs_bindgen_e5197d861db9eeda :: + 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:348: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_e5197d861db9eeda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_0e71eeb22b30d2f5" hs_bindgen_0e71eeb22b30d2f5 :: + 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:355: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_0e71eeb22b30d2f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_e16ab93c2e2ff615" hs_bindgen_e16ab93c2e2ff615 :: + 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:369: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_e16ab93c2e2ff615 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_5960962fc3cfe384" hs_bindgen_5960962fc3cfe384 :: + 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:377: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_5960962fc3cfe384 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_1863de8dfa035c38" hs_bindgen_1863de8dfa035c38 :: + 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:385: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_1863de8dfa035c38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_7f60c6f72451e286" hs_bindgen_7f60c6f72451e286 :: + 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:393: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_7f60c6f72451e286 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_b6bf0e80a411f3ee" hs_bindgen_b6bf0e80a411f3ee :: + 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:402: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_b6bf0e80a411f3ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_ea07ffba0a0dd9c7" hs_bindgen_ea07ffba0a0dd9c7 :: + 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:412: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_ea07ffba0a0dd9c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_631f2f5b1c89354a" hs_bindgen_631f2f5b1c89354a :: + 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:420: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_631f2f5b1c89354a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_e85b0874371016c2" hs_bindgen_e85b0874371016c2 :: + 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:427: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_e85b0874371016c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_51b0bf9c51f9a589" hs_bindgen_51b0bf9c51f9a589 :: + 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:435: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_51b0bf9c51f9a589 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_5efb29f3e31c1471" hs_bindgen_5efb29f3e31c1471 :: + 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:450: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_5efb29f3e31c1471 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_bf6afa24aa44322c" hs_bindgen_bf6afa24aa44322c :: + 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:458: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_bf6afa24aa44322c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_f397ca9e470b5f83" hs_bindgen_f397ca9e470b5f83 :: + 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:467: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_f397ca9e470b5f83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_b3d6f17d979386ea" hs_bindgen_b3d6f17d979386ea :: + 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:476: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_b3d6f17d979386ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_152122589fff2e3e" hs_bindgen_152122589fff2e3e :: + 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:485: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_152122589fff2e3e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_82cda72506d8048d" hs_bindgen_82cda72506d8048d :: + 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:495: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_82cda72506d8048d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_a359483fb176aaf4" hs_bindgen_a359483fb176aaf4 :: + 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:503: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_a359483fb176aaf4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_1772eed3a8b07c8e" hs_bindgen_1772eed3a8b07c8e :: + 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:511: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_1772eed3a8b07c8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_621c3a33a30471cb" hs_bindgen_621c3a33a30471cb :: + 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:521: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_621c3a33a30471cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_91d287efbcc48e1c" hs_bindgen_91d287efbcc48e1c :: + 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:531: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_91d287efbcc48e1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_b06d37fe4820acf8" hs_bindgen_b06d37fe4820acf8 :: + 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:545: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_b06d37fe4820acf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_cba6ec4ccddf36c6" hs_bindgen_cba6ec4ccddf36c6 :: + 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:550: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_cba6ec4ccddf36c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_a3f8a613ea5d8224" hs_bindgen_a3f8a613ea5d8224 :: + 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:555: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_a3f8a613ea5d8224 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_4b4f2ff6daf27bed" hs_bindgen_4b4f2ff6daf27bed :: + 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:560: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_4b4f2ff6daf27bed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_0936644dd4ebe68a" hs_bindgen_0936644dd4ebe68a :: + 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:565: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_0936644dd4ebe68a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_e3e0d4bbbcdf6194" hs_bindgen_e3e0d4bbbcdf6194 :: + 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:570: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_e3e0d4bbbcdf6194 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_f700204edfe1d629" hs_bindgen_f700204edfe1d629 :: + 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:577: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_f700204edfe1d629 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_383ea70f503d5dea" hs_bindgen_383ea70f503d5dea :: + 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:582: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_383ea70f503d5dea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_ec77eb5f0e2a561a" hs_bindgen_ec77eb5f0e2a561a :: + 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:588: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_ec77eb5f0e2a561a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_227dd075f8b0a2b1" hs_bindgen_227dd075f8b0a2b1 :: + 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:594: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_227dd075f8b0a2b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_e75712470585d126" hs_bindgen_e75712470585d126 :: + 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:600: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_e75712470585d126 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_b0e2c8b353b7f46a" hs_bindgen_b0e2c8b353b7f46a :: + 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:606: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_b0e2c8b353b7f46a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_424a76bd7835770a" hs_bindgen_424a76bd7835770a :: + 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:611: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_424a76bd7835770a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_a05b554b4daf129b" hs_bindgen_a05b554b4daf129b :: + 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:621: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_a05b554b4daf129b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_738a629dd1a3ce22" hs_bindgen_738a629dd1a3ce22 :: + 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:626: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_738a629dd1a3ce22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_e38a5b6631d5a24f" hs_bindgen_e38a5b6631d5a24f :: + 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:631: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_e38a5b6631d5a24f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_46491098c8851b2c" hs_bindgen_46491098c8851b2c :: + 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:658: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_46491098c8851b2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_4209c8c7eadd12f1" hs_bindgen_4209c8c7eadd12f1 :: + 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:670: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_4209c8c7eadd12f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_fb6f6de00cee12af" hs_bindgen_fb6f6de00cee12af :: + 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:676: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_fb6f6de00cee12af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_98ed58f552bc660f" hs_bindgen_98ed58f552bc660f :: + 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:695: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_98ed58f552bc660f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_620a7313ec5d21aa" hs_bindgen_620a7313ec5d21aa :: + 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:728: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_620a7313ec5d21aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_73794f9906c3f61b" hs_bindgen_73794f9906c3f61b :: + 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:752: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_73794f9906c3f61b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_1b7744d650fdb3a8" hs_bindgen_1b7744d650fdb3a8 :: + 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:779: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_1b7744d650fdb3a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_ca552ac9c89c9458" hs_bindgen_ca552ac9c89c9458 :: + 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:798: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_ca552ac9c89c9458 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_692e5483c1f23bd6" hs_bindgen_692e5483c1f23bd6 :: + 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:821: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_692e5483c1f23bd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_eb7b3ae488938f9f" hs_bindgen_eb7b3ae488938f9f :: + 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:839: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_eb7b3ae488938f9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_a425e7b730749317" hs_bindgen_a425e7b730749317 :: + 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:845: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_a425e7b730749317 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_28e1f58198cd31bf" hs_bindgen_28e1f58198cd31bf :: + 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:851: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_28e1f58198cd31bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_351b99eb933eb431" hs_bindgen_351b99eb933eb431 :: + 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:856: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_351b99eb933eb431 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_90454636283ecc8f" hs_bindgen_90454636283ecc8f :: + 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:862: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_90454636283ecc8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_91c2073d2d576621" hs_bindgen_91c2073d2d576621 :: + 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:868: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_91c2073d2d576621 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_cd070b3782d390e3" hs_bindgen_cd070b3782d390e3 :: + 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:874: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_cd070b3782d390e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_8d11a7c745e873d2" hs_bindgen_8d11a7c745e873d2 :: + 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:882: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_8d11a7c745e873d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_c761378c6f419f4d" hs_bindgen_c761378c6f419f4d :: + 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:892: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_c761378c6f419f4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_0f94039b011a732f" hs_bindgen_0f94039b011a732f :: + 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:905: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_0f94039b011a732f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_f3275f637c8e3a73" hs_bindgen_f3275f637c8e3a73 :: + 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:911: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_f3275f637c8e3a73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_f087cd4a09fce5e4" hs_bindgen_f087cd4a09fce5e4 :: + 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:916: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_f087cd4a09fce5e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_0fb15da5b4712aa2" hs_bindgen_0fb15da5b4712aa2 :: + 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:921: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_0fb15da5b4712aa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_4bd6fee47c8ded62" hs_bindgen_4bd6fee47c8ded62 :: + 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:926: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_4bd6fee47c8ded62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_0da127b33a99f085" hs_bindgen_0da127b33a99f085 :: + 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:931: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_0da127b33a99f085 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_fc2ffaa5ceda3903" hs_bindgen_fc2ffaa5ceda3903 :: + 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:936: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_fc2ffaa5ceda3903 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_4c8adfe2367f921c" hs_bindgen_4c8adfe2367f921c :: + 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:941: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_4c8adfe2367f921c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_67a61b2ec9e8ef35" hs_bindgen_67a61b2ec9e8ef35 :: + 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:947: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_67a61b2ec9e8ef35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_71ceba2dd0b1c9d2" hs_bindgen_71ceba2dd0b1c9d2 :: + 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:952: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_71ceba2dd0b1c9d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_bc81a5dc36be5662" hs_bindgen_bc81a5dc36be5662 :: + 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:957: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_bc81a5dc36be5662 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_e5bc0f2f676ca448" hs_bindgen_e5bc0f2f676ca448 :: + 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:962: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_e5bc0f2f676ca448 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_6458df2be9e3a26d" hs_bindgen_6458df2be9e3a26d :: + 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:967: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_6458df2be9e3a26d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_790ec18b0a3dbf55" hs_bindgen_790ec18b0a3dbf55 :: + 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:972: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_790ec18b0a3dbf55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_e854c3f58e4f1328" hs_bindgen_e854c3f58e4f1328 :: + 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:979: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_e854c3f58e4f1328 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_6d66c5f88427a522" hs_bindgen_6d66c5f88427a522 :: + 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:984: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_6d66c5f88427a522 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_01ddfd43093538dd" hs_bindgen_01ddfd43093538dd :: + 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:986: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_01ddfd43093538dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_e6735b15fd889f51" hs_bindgen_e6735b15fd889f51 :: + 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:988: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_e6735b15fd889f51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_51c25e44cfec8113" hs_bindgen_51c25e44cfec8113 :: + 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:990: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_51c25e44cfec8113 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_42d62b4f816099a3" hs_bindgen_42d62b4f816099a3 :: + 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:991: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_42d62b4f816099a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_518f0f6ed8c481fd" hs_bindgen_518f0f6ed8c481fd :: + 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:993: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_518f0f6ed8c481fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_19de18f3571a1096" hs_bindgen_19de18f3571a1096 :: + 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:994: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_19de18f3571a1096 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_669738d143c47f0c" hs_bindgen_669738d143c47f0c :: + 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:996: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_669738d143c47f0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_bc4a4dcecb9c2d28" hs_bindgen_bc4a4dcecb9c2d28 :: + 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:997: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_bc4a4dcecb9c2d28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_23ea6e868fa999dd" hs_bindgen_23ea6e868fa999dd :: + 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:998: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_23ea6e868fa999dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_f5aa08fab18e0754" hs_bindgen_f5aa08fab18e0754 :: + 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:1001: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_f5aa08fab18e0754 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_f2bf08668e0b8a8e" hs_bindgen_f2bf08668e0b8a8e :: + 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:1004: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_f2bf08668e0b8a8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_341031bf085073f5" hs_bindgen_341031bf085073f5 :: + 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:1011: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_341031bf085073f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_1a75e0cce923c78e" hs_bindgen_1a75e0cce923c78e :: + 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:1018: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_1a75e0cce923c78e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_49c063e76fb83af4" hs_bindgen_49c063e76fb83af4 :: + 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:1023: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_49c063e76fb83af4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_c9a3a1740e60a47c" hs_bindgen_c9a3a1740e60a47c :: + 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:1027: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_c9a3a1740e60a47c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_a4004447575a0ee2" hs_bindgen_a4004447575a0ee2 :: + 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:1029: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_a4004447575a0ee2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_f71678ecf9134077" hs_bindgen_f71678ecf9134077 :: + 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:1030: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_f71678ecf9134077 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_18186c7f30f1734e" hs_bindgen_18186c7f30f1734e :: + 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:1032: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_18186c7f30f1734e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_e7f3a9438bcb4c08" hs_bindgen_e7f3a9438bcb4c08 :: + 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:1034: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_e7f3a9438bcb4c08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_798da1a0ad3cddfb" hs_bindgen_798da1a0ad3cddfb :: + 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:1037: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_798da1a0ad3cddfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_3504c67d00e8e0a0" hs_bindgen_3504c67d00e8e0a0 :: + 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:1039: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_3504c67d00e8e0a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_3198f9aa69ac9035" hs_bindgen_3198f9aa69ac9035 :: + 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:1046: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_3198f9aa69ac9035 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_7fc924b2beab9239" hs_bindgen_7fc924b2beab9239 :: + 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:1053: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_7fc924b2beab9239 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_4b3be3cbcf2f307f" hs_bindgen_4b3be3cbcf2f307f :: + 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:1058: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_4b3be3cbcf2f307f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_2ac247d6dd7482da" hs_bindgen_2ac247d6dd7482da :: + 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:1063: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_2ac247d6dd7482da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_4e91cae0b0a48f11" hs_bindgen_4e91cae0b0a48f11 :: + 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:1081: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_4e91cae0b0a48f11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_7ce66e4201436907" hs_bindgen_7ce66e4201436907 :: + 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:1092: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_7ce66e4201436907 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_39425cf18c426f9f" hs_bindgen_39425cf18c426f9f :: + 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:1108: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_39425cf18c426f9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_aad563380cc85cfe" hs_bindgen_aad563380cc85cfe :: + 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:1112: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_aad563380cc85cfe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_d0fdef7e59808db0" hs_bindgen_d0fdef7e59808db0 :: + 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:1115: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_d0fdef7e59808db0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_601d3dc04242d9a4" hs_bindgen_601d3dc04242d9a4 :: + 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:1117: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_601d3dc04242d9a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_a8e751ac5d554520" hs_bindgen_a8e751ac5d554520 :: + 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:1119: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_a8e751ac5d554520 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_91e1ceb8428b85fd" hs_bindgen_91e1ceb8428b85fd :: + 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:1121: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_91e1ceb8428b85fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_c5a532a397bdd391" hs_bindgen_c5a532a397bdd391 :: + 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:1123: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_c5a532a397bdd391 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_c7dd5c1c9bc3cfca" hs_bindgen_c7dd5c1c9bc3cfca :: + 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:1143: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_c7dd5c1c9bc3cfca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_f3e944ac0241707d" hs_bindgen_f3e944ac0241707d :: + 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:1165: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_f3e944ac0241707d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_72cfaea861df9767" hs_bindgen_72cfaea861df9767 :: + 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:1173: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_72cfaea861df9767 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_0f6ea14848e7a3a0" hs_bindgen_0f6ea14848e7a3a0 :: + 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:1178: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_0f6ea14848e7a3a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_5afb5703c41cda69" hs_bindgen_5afb5703c41cda69 :: + 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:1191: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_5afb5703c41cda69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_100fd9d88df6ea74" hs_bindgen_100fd9d88df6ea74 :: + 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:1196: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_100fd9d88df6ea74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_6e49f500e0838af9" hs_bindgen_6e49f500e0838af9 :: + 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:1201: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_6e49f500e0838af9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_a3c5a20659b712b1" hs_bindgen_a3c5a20659b712b1 :: + 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:1206: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_a3c5a20659b712b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_8f2851677a963234" hs_bindgen_8f2851677a963234 :: + 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:1208: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_8f2851677a963234 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_73224af872cb6c31" hs_bindgen_73224af872cb6c31 :: + 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:1215: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_73224af872cb6c31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_b7aea13b7b4aa59d" hs_bindgen_b7aea13b7b4aa59d :: + 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:1230: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_b7aea13b7b4aa59d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_4bb9d0c8de375868" hs_bindgen_4bb9d0c8de375868 :: + 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:1245: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_4bb9d0c8de375868 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_0b1aafa77620d78b" hs_bindgen_0b1aafa77620d78b :: + 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:1262: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_0b1aafa77620d78b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_4c08d8e213c7954d" hs_bindgen_4c08d8e213c7954d :: + 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:1277: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_4c08d8e213c7954d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_7239f000349dee77" hs_bindgen_7239f000349dee77 :: + 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:1293: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_7239f000349dee77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_de46e3f464163190" hs_bindgen_de46e3f464163190 :: + 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:1308: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_de46e3f464163190 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_b39b0cc91e34ed50" hs_bindgen_b39b0cc91e34ed50 :: + 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:1319: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_b39b0cc91e34ed50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_37f797bafdb20b44" hs_bindgen_37f797bafdb20b44 :: + 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:1321: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_37f797bafdb20b44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_f3b9b92a7c241e33" hs_bindgen_f3b9b92a7c241e33 :: + 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:1323: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_f3b9b92a7c241e33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_52742075401e3137" hs_bindgen_52742075401e3137 :: + 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:1328: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_52742075401e3137 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_cab53c21b2cc953b" hs_bindgen_cab53c21b2cc953b :: + 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:1333: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_cab53c21b2cc953b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_26d35fb752684ebf" hs_bindgen_26d35fb752684ebf :: + 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:1338: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_26d35fb752684ebf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_caa3feaf51078a74" hs_bindgen_caa3feaf51078a74 :: + 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:1340: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_caa3feaf51078a74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_de19ac4feb8d0932" hs_bindgen_de19ac4feb8d0932 :: + 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:1345: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_de19ac4feb8d0932 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_b0472ad934302a16" hs_bindgen_b0472ad934302a16 :: + 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:1347: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_b0472ad934302a16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_16090140bc6508c7" hs_bindgen_16090140bc6508c7 :: + 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:1350: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_16090140bc6508c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_d3eb03e691e30f54" hs_bindgen_d3eb03e691e30f54 :: + 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:1355: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_d3eb03e691e30f54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_7864142fb7135f4c" hs_bindgen_7864142fb7135f4c :: + 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:1360: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_7864142fb7135f4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_9c8bfe1f31ab26f3" hs_bindgen_9c8bfe1f31ab26f3 :: + 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:1362: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_9c8bfe1f31ab26f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_a58f50bed6f6cf13" hs_bindgen_a58f50bed6f6cf13 :: + 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:1367: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_a58f50bed6f6cf13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_6cc0f9bae5ee8eca" hs_bindgen_6cc0f9bae5ee8eca :: + 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:1369: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_6cc0f9bae5ee8eca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_2103332e5e6e7c96" hs_bindgen_2103332e5e6e7c96 :: + 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:1372: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_2103332e5e6e7c96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_52c750727b08aae5" hs_bindgen_52c750727b08aae5 :: + 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:1374: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_52c750727b08aae5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_8092cd0fa00a8efa" hs_bindgen_8092cd0fa00a8efa :: + 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:1376: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_8092cd0fa00a8efa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_48b0b22920ebc88c" hs_bindgen_48b0b22920ebc88c :: + 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:1378: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_48b0b22920ebc88c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_f3024ec1161abae9" hs_bindgen_f3024ec1161abae9 :: + 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:1380: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_f3024ec1161abae9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_8d723c5dabb39fd7" hs_bindgen_8d723c5dabb39fd7 :: + 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:1383: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_8d723c5dabb39fd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_a0f9249d3b45b28e" hs_bindgen_a0f9249d3b45b28e :: + 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:1385: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_a0f9249d3b45b28e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_1b4bdd5e64da1a9d" hs_bindgen_1b4bdd5e64da1a9d :: + 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:1388: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_1b4bdd5e64da1a9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_5c4064be03ea41a8" hs_bindgen_5c4064be03ea41a8 :: + 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:1390: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_5c4064be03ea41a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_b932f4e4c20b8c30" hs_bindgen_b932f4e4c20b8c30 :: + 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:1396: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_b932f4e4c20b8c30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_22beac61236b3e5b" hs_bindgen_22beac61236b3e5b :: + 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:1399: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_22beac61236b3e5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_44ebd19d6b39cfc8" hs_bindgen_44ebd19d6b39cfc8 :: + 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:1402: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_44ebd19d6b39cfc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_089303f1b5125d8a" hs_bindgen_089303f1b5125d8a :: + 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:1405: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_089303f1b5125d8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_047716842a019f2d" hs_bindgen_047716842a019f2d :: + 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:1407: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_047716842a019f2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_0d3fa72b132fa178" hs_bindgen_0d3fa72b132fa178 :: + 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:1409: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_0d3fa72b132fa178 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_974f106c68412a40" hs_bindgen_974f106c68412a40 :: + 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:1411: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_974f106c68412a40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_f33469537729ff72" hs_bindgen_f33469537729ff72 :: + 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:1426: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_f33469537729ff72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_f0d717499c289f92" hs_bindgen_f0d717499c289f92 :: + 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:1440: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_f0d717499c289f92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_69d8f92eeb492684" hs_bindgen_69d8f92eeb492684 :: + 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:1458: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_69d8f92eeb492684 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_5e0839ec8addf406" hs_bindgen_5e0839ec8addf406 :: + 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:1473: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_5e0839ec8addf406 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_e5a56818115f46eb" hs_bindgen_e5a56818115f46eb :: + 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:1479: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_e5a56818115f46eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_721a9dd62469da6f" hs_bindgen_721a9dd62469da6f :: + 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:1481: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_721a9dd62469da6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_81b4990dcea8ce09" hs_bindgen_81b4990dcea8ce09 :: + 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:1483: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_81b4990dcea8ce09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_8d881c989642bd5d" hs_bindgen_8d881c989642bd5d :: + 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:1485: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_8d881c989642bd5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_7609fc51fb6c5ecc" hs_bindgen_7609fc51fb6c5ecc :: + 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:1491: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_7609fc51fb6c5ecc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_7474a7673b37ea8c" hs_bindgen_7474a7673b37ea8c :: + 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:1493: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_7474a7673b37ea8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_40a0b11df30fa2b3" hs_bindgen_40a0b11df30fa2b3 :: + 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:1495: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_40a0b11df30fa2b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_1bca79b3488c669b" hs_bindgen_1bca79b3488c669b :: + 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:1497: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_1bca79b3488c669b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_7c91ef3379967a97" hs_bindgen_7c91ef3379967a97 :: + 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:1503: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_7c91ef3379967a97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_ec8f629ea2735056" hs_bindgen_ec8f629ea2735056 :: + 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:1505: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_ec8f629ea2735056 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_41f5bd07cfb2bf30" hs_bindgen_41f5bd07cfb2bf30 :: + 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:1507: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_41f5bd07cfb2bf30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f5123119ee3a17b3" hs_bindgen_f5123119ee3a17b3 :: + 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:1509: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_f5123119ee3a17b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_f40e71e511bd7446" hs_bindgen_f40e71e511bd7446 :: + 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:1515: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_f40e71e511bd7446 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_eabd50c2a5e8d038" hs_bindgen_eabd50c2a5e8d038 :: + 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:1517: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_eabd50c2a5e8d038 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_75452febd049471e" hs_bindgen_75452febd049471e :: + 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:1519: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_75452febd049471e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_d827396d3eec4127" hs_bindgen_d827396d3eec4127 :: + 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:1521: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_d827396d3eec4127 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_f09f9f2a939509de" hs_bindgen_f09f9f2a939509de :: + 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:1528: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_f09f9f2a939509de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_ab52c7cefd929f29" hs_bindgen_ab52c7cefd929f29 :: + 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:1531: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_ab52c7cefd929f29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_7601fc771af19ea7" hs_bindgen_7601fc771af19ea7 :: + 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:1537: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_7601fc771af19ea7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_3d6072f10a708bee" hs_bindgen_3d6072f10a708bee :: + 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:1539: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_3d6072f10a708bee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_59e5ae971dca563d" hs_bindgen_59e5ae971dca563d :: + 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:1543: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_59e5ae971dca563d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_4f53af74bbad5127" hs_bindgen_4f53af74bbad5127 :: + 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:1547: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_4f53af74bbad5127 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_c819a2fc6d27cbfb" hs_bindgen_c819a2fc6d27cbfb :: + 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:1554: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_c819a2fc6d27cbfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_a70deb96ea87cd9b" hs_bindgen_a70deb96ea87cd9b :: + 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:1557: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_a70deb96ea87cd9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_81cb916b1a0e97db" hs_bindgen_81cb916b1a0e97db :: + 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:1564: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_81cb916b1a0e97db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_ec1f203dde8d2d73" hs_bindgen_ec1f203dde8d2d73 :: + 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:1567: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_ec1f203dde8d2d73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_bd033b0e0505b531" hs_bindgen_bd033b0e0505b531 :: + 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:1574: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_bd033b0e0505b531 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_4bb5c1938df7c823" hs_bindgen_4bb5c1938df7c823 :: + 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:1577: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_4bb5c1938df7c823 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_eb00b9a3cc75beee" hs_bindgen_eb00b9a3cc75beee :: + 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:1583: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_eb00b9a3cc75beee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_d7c291fa62c83b7c" hs_bindgen_d7c291fa62c83b7c :: + 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:1586: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_d7c291fa62c83b7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_bd1bf73a90b3a26e" hs_bindgen_bd1bf73a90b3a26e :: + 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:1589: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_bd1bf73a90b3a26e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_fd71b3c6d893408c" hs_bindgen_fd71b3c6d893408c :: + 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:1592: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_fd71b3c6d893408c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_dccd954a647ef07c" hs_bindgen_dccd954a647ef07c :: + 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:1595: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_dccd954a647ef07c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_6dee366065ccaf24" hs_bindgen_6dee366065ccaf24 :: + 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:1598: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_6dee366065ccaf24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_08d38e56f2fd3ce3" hs_bindgen_08d38e56f2fd3ce3 :: + 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:1601: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_08d38e56f2fd3ce3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_49c8b77571b72e44" hs_bindgen_49c8b77571b72e44 :: + 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:1605: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_49c8b77571b72e44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_314228e630ee10bc" hs_bindgen_314228e630ee10bc :: + 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:1609: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_314228e630ee10bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_cb8067ca7365dbab" hs_bindgen_cb8067ca7365dbab :: + 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:1612: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_cb8067ca7365dbab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_b941c206b43127fd" hs_bindgen_b941c206b43127fd :: + 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:1619: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_b941c206b43127fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_7d61993943d67c78" hs_bindgen_7d61993943d67c78 :: + 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:1627: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_7d61993943d67c78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_36caba58cc08f9a8" hs_bindgen_36caba58cc08f9a8 :: + 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:1632: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_36caba58cc08f9a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_01be0adb18208d6c" hs_bindgen_01be0adb18208d6c :: + 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:1635: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_01be0adb18208d6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_bc44f9d8d66e5ef6" hs_bindgen_bc44f9d8d66e5ef6 :: + 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:1638: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_bc44f9d8d66e5ef6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_3cd887e1ae187d5e" hs_bindgen_3cd887e1ae187d5e :: + 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:1651: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_3cd887e1ae187d5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_6143c859e1f7bc44" hs_bindgen_6143c859e1f7bc44 :: + 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:1656: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_6143c859e1f7bc44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_80832be31389a403" hs_bindgen_80832be31389a403 :: + 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:1659: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_80832be31389a403 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_1ff507b896d91a62" hs_bindgen_1ff507b896d91a62 :: + 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:1662: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_1ff507b896d91a62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_8f31617ed92f39c0" hs_bindgen_8f31617ed92f39c0 :: + 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:1674: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_8f31617ed92f39c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_86cfe481c08d0ddf" hs_bindgen_86cfe481c08d0ddf :: + 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:1679: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_86cfe481c08d0ddf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_ff923f43fedaa23b" hs_bindgen_ff923f43fedaa23b :: + 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:1681: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_ff923f43fedaa23b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_c739eef412344faa" hs_bindgen_c739eef412344faa :: + 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:1683: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_c739eef412344faa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_6bc13e6f95763d2d" hs_bindgen_6bc13e6f95763d2d :: + 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:1686: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_6bc13e6f95763d2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_4dd12cbaf17eaba8" hs_bindgen_4dd12cbaf17eaba8 :: + 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:1694: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_4dd12cbaf17eaba8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_53bee9b420c3fedb" hs_bindgen_53bee9b420c3fedb :: + 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:1702: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_53bee9b420c3fedb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_154f3335071413b2" hs_bindgen_154f3335071413b2 :: + 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:1704: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_154f3335071413b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_a7f0a97f1a5c2f84" hs_bindgen_a7f0a97f1a5c2f84 :: + 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:1705: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_a7f0a97f1a5c2f84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_e7ad40be4998a8ed" hs_bindgen_e7ad40be4998a8ed :: + 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:1713: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_e7ad40be4998a8ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_33d0e2dc1d393846" hs_bindgen_33d0e2dc1d393846 :: + 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:1718: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_33d0e2dc1d393846 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_8eef3d6f45e96c64" hs_bindgen_8eef3d6f45e96c64 :: + 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:1720: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_8eef3d6f45e96c64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_3b809204ed5ef7db" hs_bindgen_3b809204ed5ef7db :: + 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:1723: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_3b809204ed5ef7db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_1d53a1e08389c878" hs_bindgen_1d53a1e08389c878 :: + 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:1725: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_1d53a1e08389c878 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_c6528c3db8f6b3bf" hs_bindgen_c6528c3db8f6b3bf :: + 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:1728: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_c6528c3db8f6b3bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_fb7b02a3098e4e5e" hs_bindgen_fb7b02a3098e4e5e :: + 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:1742: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_fb7b02a3098e4e5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_733776be2a7a4090" hs_bindgen_733776be2a7a4090 :: + 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:1747: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_733776be2a7a4090 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_41407de6cc6fc4ea" hs_bindgen_41407de6cc6fc4ea :: + 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:1750: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_41407de6cc6fc4ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_fe8fc2faf03dbae3" hs_bindgen_fe8fc2faf03dbae3 :: + 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:1755: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_fe8fc2faf03dbae3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_dbbd4cd04c957ab2" hs_bindgen_dbbd4cd04c957ab2 :: + 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:1759: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_dbbd4cd04c957ab2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_c5c51f0cab6258a6" hs_bindgen_c5c51f0cab6258a6 :: + 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:1772: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_c5c51f0cab6258a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_70b9e78edad1a39b" hs_bindgen_70b9e78edad1a39b :: + 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:1777: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_70b9e78edad1a39b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_965675bc9e32bc7f" hs_bindgen_965675bc9e32bc7f :: + 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:1780: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_965675bc9e32bc7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_d74880b931e67bde" hs_bindgen_d74880b931e67bde :: + 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:1785: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_d74880b931e67bde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_382ff30202ec7971" hs_bindgen_382ff30202ec7971 :: + 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:1798: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_382ff30202ec7971 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_36ae9a101d51ada0" hs_bindgen_36ae9a101d51ada0 :: + 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:1805: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_36ae9a101d51ada0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_9930154d7e21739c" hs_bindgen_9930154d7e21739c :: + 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:1820: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_9930154d7e21739c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_052ebc0299f1c7d0" hs_bindgen_052ebc0299f1c7d0 :: + 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:1835: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_052ebc0299f1c7d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_5393d8dd14b20301" hs_bindgen_5393d8dd14b20301 :: + 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:1836: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_5393d8dd14b20301 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_fde02fc3504f21b7" hs_bindgen_fde02fc3504f21b7 :: + 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:1841: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_fde02fc3504f21b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_ea79bb0160e5072c" hs_bindgen_ea79bb0160e5072c :: + 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:1843: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_ea79bb0160e5072c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_1ba250c244854e85" hs_bindgen_1ba250c244854e85 :: + 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:1846: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_1ba250c244854e85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_406000c35c1c1cf1" hs_bindgen_406000c35c1c1cf1 :: + 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:1847: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_406000c35c1c1cf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_20d03369e344791e" hs_bindgen_20d03369e344791e :: + 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:1849: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_20d03369e344791e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_730f45b4a28a9d7b" hs_bindgen_730f45b4a28a9d7b :: + 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:1850: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_730f45b4a28a9d7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_9eafed8f59e7529b" hs_bindgen_9eafed8f59e7529b :: + 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:1853: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_9eafed8f59e7529b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_0142e20361a4141f" hs_bindgen_0142e20361a4141f :: + 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:1855: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_0142e20361a4141f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_e1c0e373fd998d5c" hs_bindgen_e1c0e373fd998d5c :: + 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:1856: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_e1c0e373fd998d5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_7bdecc535fd1c63f" hs_bindgen_7bdecc535fd1c63f :: + 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:1857: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_7bdecc535fd1c63f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_73bc3728f1d91fb8" hs_bindgen_73bc3728f1d91fb8 :: + 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:1859: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_73bc3728f1d91fb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_0ef3ead28d4e9f4e" hs_bindgen_0ef3ead28d4e9f4e :: + 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:1862: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_0ef3ead28d4e9f4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_28386f66d0b0f056" hs_bindgen_28386f66d0b0f056 :: + 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:1864: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_28386f66d0b0f056 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_2d53831afe9a11cf" hs_bindgen_2d53831afe9a11cf :: + 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:1867: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_2d53831afe9a11cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_ef25ade541dffef6" hs_bindgen_ef25ade541dffef6 :: + 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:1871: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_ef25ade541dffef6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_5bc4fc57830146eb" hs_bindgen_5bc4fc57830146eb :: + 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:1874: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_5bc4fc57830146eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_7a59c250dde94166" hs_bindgen_7a59c250dde94166 :: + 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:1877: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_7a59c250dde94166 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_009b781b9f13d079" hs_bindgen_009b781b9f13d079 :: + 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:1893: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_009b781b9f13d079 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_a67d45349b6a33d9" hs_bindgen_a67d45349b6a33d9 :: + 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:1899: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_a67d45349b6a33d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_e56c92903ce893d6" hs_bindgen_e56c92903ce893d6 :: + 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:1910: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_e56c92903ce893d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_bd427015899587f9" hs_bindgen_bd427015899587f9 :: + 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:1925: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_bd427015899587f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_75980d4f09b98f31" hs_bindgen_75980d4f09b98f31 :: + 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:1933: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_75980d4f09b98f31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_57a878d0f8588838" hs_bindgen_57a878d0f8588838 :: + 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:1935: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_57a878d0f8588838 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_f6120f1dfb28ae62" hs_bindgen_f6120f1dfb28ae62 :: + 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:1937: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_f6120f1dfb28ae62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_cfea80b640b5b035" hs_bindgen_cfea80b640b5b035 :: + 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:1943: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_cfea80b640b5b035 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_e5bed3c2d2a73ab7" hs_bindgen_e5bed3c2d2a73ab7 :: + 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:1950: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_e5bed3c2d2a73ab7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_2fe393026c563ce4" hs_bindgen_2fe393026c563ce4 :: + 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:1968: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_2fe393026c563ce4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_6e5b56de02fee95d" hs_bindgen_6e5b56de02fee95d :: + 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:1977: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_6e5b56de02fee95d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_107877f6363a4be2" hs_bindgen_107877f6363a4be2 :: + 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:1985: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_107877f6363a4be2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_2cc46041005a15d6" hs_bindgen_2cc46041005a15d6 :: + 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:1995: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_2cc46041005a15d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_5456a83bfcdca7ea" hs_bindgen_5456a83bfcdca7ea :: + 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:2014: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_5456a83bfcdca7ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_df01607a57de6883" hs_bindgen_df01607a57de6883 :: + 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:2021: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_df01607a57de6883 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_d14428168a3d6e0c" hs_bindgen_d14428168a3d6e0c :: + 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:2027: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_d14428168a3d6e0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_15adf1109ceae173" hs_bindgen_15adf1109ceae173 :: + 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:2033: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_15adf1109ceae173 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_00ad445b0d32a1dc" hs_bindgen_00ad445b0d32a1dc :: + 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:2046: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_00ad445b0d32a1dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_95b16d30848974e4" hs_bindgen_95b16d30848974e4 :: + 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:2054: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_95b16d30848974e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_e6171cd32da3e2c0" hs_bindgen_e6171cd32da3e2c0 :: + 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:2063: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_e6171cd32da3e2c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_e3ded62e6263398c" hs_bindgen_e3ded62e6263398c :: + 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:2074: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_e3ded62e6263398c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_a859a6b7a1e368ae" hs_bindgen_a859a6b7a1e368ae :: + 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:2085: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_a859a6b7a1e368ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_90d587ebde2841e8" hs_bindgen_90d587ebde2841e8 :: + 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:2092: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_90d587ebde2841e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_015827ae090979af" hs_bindgen_015827ae090979af :: + 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:2095: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_015827ae090979af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_1531c0ebea444142" hs_bindgen_1531c0ebea444142 :: + 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:2098: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_1531c0ebea444142 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_28ce581020993417" hs_bindgen_28ce581020993417 :: + 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:2110: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_28ce581020993417 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_c620ee2253fc829b" hs_bindgen_c620ee2253fc829b :: + 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:2118: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_c620ee2253fc829b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_b524d3b8e156e793" hs_bindgen_b524d3b8e156e793 :: + 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:2133: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_b524d3b8e156e793 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_25a8e89933789e69" hs_bindgen_25a8e89933789e69 :: + 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:2152: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_25a8e89933789e69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_ba71a17d9db4b4f7" hs_bindgen_ba71a17d9db4b4f7 :: + 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:2168: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_ba71a17d9db4b4f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_6dd6bb9280bafcdc" hs_bindgen_6dd6bb9280bafcdc :: + 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:2195: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_6dd6bb9280bafcdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_a48a933ebe49a667" hs_bindgen_a48a933ebe49a667 :: + 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:2213: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_a48a933ebe49a667 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_75d97c7f30c7d9d3" hs_bindgen_75d97c7f30c7d9d3 :: + 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:2234: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_75d97c7f30c7d9d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_8e2821799c5bbb92" hs_bindgen_8e2821799c5bbb92 :: + 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:2255: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_8e2821799c5bbb92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_bd715b3bbeb1dca9" hs_bindgen_bd715b3bbeb1dca9 :: + 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:2273: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_bd715b3bbeb1dca9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_50816ff5d09de5ce" hs_bindgen_50816ff5d09de5ce :: + 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:2281: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_50816ff5d09de5ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_3822ddea4eaae4c2" hs_bindgen_3822ddea4eaae4c2 :: + 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:2291: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_3822ddea4eaae4c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_6ef77bbfb1ccded8" hs_bindgen_6ef77bbfb1ccded8 :: + 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:2303: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_6ef77bbfb1ccded8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_01baf8f50da08b90" hs_bindgen_01baf8f50da08b90 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2310: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_01baf8f50da08b90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_469897072718f1aa" hs_bindgen_469897072718f1aa :: + 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:2321: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_469897072718f1aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_c6dfcc60ba9d0da7" hs_bindgen_c6dfcc60ba9d0da7 :: + 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:2333: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_c6dfcc60ba9d0da7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_18d0be45025695a4" hs_bindgen_18d0be45025695a4 :: + 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:2340: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_18d0be45025695a4 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/Safe.hs new file mode 100644 index 00000000..ad35188f --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/Safe.hs @@ -0,0 +1,13480 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_6_0.Safe where + +import Botan.Bindings.Generated.Botan_3_6_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_9fb196cb414db0dd (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_4c3a8b5d7f760fe5 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_8ec3bc271e1bed06 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_e75b72ac6bd90c50 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_b19c6f227e189833 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_6baa34c0972f7a23 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_efb93e6219d5a97e (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_fa743220398d1cc5 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_a7347bea24cbc15f (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_9d4c5268553f7781 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e8acb14ca7c0f88 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b88d7ce42dff31f0 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2208988048bd42dd (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3f9446c334ac9bd3 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8ab92cbe356dab1e (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_17baef7e85b3fafc (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_043d690630b0a1ba (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_80de8db4ff619b4b (" + , " 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_3623f8a4c53d62b1 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9cbea7fb73417957 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8f198e8d567da11 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45b1e680c01aa3d6 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_868e662bf7625f43 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_55252b58dc42b962 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_31d61f070bf8a885 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40d919f1ee2429fd (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98922d2477832276 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d5d99e52f638fb94 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fb96f0a0c7edbc6d (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f4bf36fb1e6889ef (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_13c139d5c6269558 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_9ac681832bf9b151 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c0220f98f37c41b1 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_04e56426456bd1ea (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9a67866209e2539 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5efa5040a26b0763 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b26de451c7756a7c (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82681722e0512857 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a6c4e4e508fa7c1f (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1cb7c7c488d4bd1f (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_28d090a373d239d2 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_002fbf1aabd09903 (" + , " 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_5f63e893d40b5f84 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_801c9765a387ea68 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a9f5a1701f2f5a8d (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8d1d4461c811b131 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_73c5d87fa3566555 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d74261f12bbf529 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d96d0d8958e8648 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_7f6deb72496aa18a (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_62b571458df442ca (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1560812646f7c4b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e2a3f7d6528ab680 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9131146bfcf6cc2e (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_caf735a1502cb06b (" + , " 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_d7d3bbdc2dec7f86 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6ab6c697c2aa359b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_875be342e53699cb (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8c8cf8bff852a8ba (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_acf5628a9ff5ce48 (" + , " 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_6a049e1b6c4e3a2c (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_e5fd86166aeedb21 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_171920c63cb62ffa (" + , " 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_e6a9e2d39f9f3b94 (" + , " 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_1896cb7e780e6d30 (" + , " 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_deb720a59f9681bb (" + , " 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_94f4cb0f1fb386b2 (" + , " 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_bb162a51263cbed6 (" + , " 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_2e55a58ee34b5e5d (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cc5beb37ff6a658b (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_95d472703ccc17be (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_a9d6fe4222bbac00 (" + , " 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_f5b0cfc3fdda27b5 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_1a97712dec619ee3 (" + , " 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_4e9dcb6f87e2542e (" + , " 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_60f65c85fb560569 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_734785d56bc5e1a0 (" + , " 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_85a4a9022e85473c (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_d2ff20c8c6320ac5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7d6736d6320b7c02 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_adeb050998adbffb (" + , " 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_56f60f7555502347 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_4c5b84a6db96a09d (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dce2d8899c1426f8 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3262f6b64131638f (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_abe603e34d16ed00 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c7171686db7b01f (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f7bef0890967f451 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bdf338372354700d (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8f42c254fa42eb52 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f4dab287e000463 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c2f68f9d15829a6b (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_110a4249b0a03161 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_7c5cdac073aaeea5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_c98ddde81daa06d5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_b794c67431793e7d (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_6f2f7a850de31f67 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_13bf3e598d495ea2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c9cf992bc8a0d8c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f230d428792f3bf0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ebdaa6cca6b85b8d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2e4b16027553c817 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ff8777d986f6f01f (" + , " 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_c12d7f85dc27d4e1 (" + , " 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_15a4f020aac10a93 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ddda567a11644d2e (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_85e154b32af42458 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_88c0813ad565a991 (" + , " 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_90e20b9a55906b58 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f06bd94ab049f602 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5285ccaabfcb7a31 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40728b3333c55e65 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5660a53eb67982e8 (" + , " 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_581a6e5b925b3b08 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_161ef3c58bb5df6e (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_433d0c720c63a76e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c783d1fd7f17d3f0 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8fc4988690370099 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_efc6a8cfb7ca8835 (" + , " 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_b14bd0c7ba1bc498 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbee517c48f1823c (" + , " 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_c8e07c5f4c71c5c6 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_789f76d5a68e2af1 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_94eb73192a0bc65d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4e111f4d9affb74a (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_349d863cb2456e11 (" + , " 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_0a3c6e7f9efd7b53 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_503e303c119c10db (" + , " 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_bf1bd8f1c16585a2 (" + , " 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_f7a8d0c2a8875347 (" + , " 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_1f604ae8c5dd3f9d (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f0dab4a8045b4beb (" + , " 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_895efa32f35c2cbe (" + , " 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_9c6e0aba51a9a7d9 (" + , " 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_7b0d1e1394a4da4d (" + , " 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_d791d5cdde1ade2f (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd7ee82530373cb0 (" + , " 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_754320b77b7c7635 (" + , " 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_e345fccd35236a08 (" + , " 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_05f97c49863cfb58 (" + , " 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_f307a74c4b060a1a (" + , " 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_3f520f2fef690236 (" + , " 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_df5e8fe042527419 (" + , " 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_3cd95c3d7b916362 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_80d1d32d28e32ddb (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c3a19b8bf0219a10 (" + , " 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_56a6eddfa0b49887 (" + , " 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_63f678df0848396e (" + , " 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_db0dfb8f53fcffec (" + , " 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_b1e36b9ddda88303 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_44eb8feef411244e (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aa3a0e1911470817 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7775ba34edc00128 (" + , " 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_1f55c0bced9ce335 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f8779ee24ee764a7 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9655920a3273a645 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_665278ed0103752f (" + , " 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_11a7fb991892212c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47cdfefe05cbdb7f (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73be923804973821 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_498f1686fc95886d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0710d201c02d58c8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_86694b779956559f (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_720f8862f7908f6d (" + , " 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_95378675f58efc33 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9018c2cd406a6fe3 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_445916b073f88df6 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_54f3d13e93be3eca (" + , " 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_86ed85312c2b63df (" + , " 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_de881c52ed59a8cb (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_085d99b610a26afd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a8af19805a5eccf7 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_785a181fcd07f23c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc8d0d9fead091ad (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2a9309648ef6ef0 (" + , " 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_640f47c1b077f0df (" + , " 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_bf21ddd907e738c4 (" + , " 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_9cbdfb1125fb8712 (" + , " 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_68888089ac53e6ba (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7105124c8bc88bf8 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_522b754aef87c132 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_758db4af60e924ae (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9e7cb3f64b5b0fe0 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8d748692147d448e (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92608e1bd1b8c2f7 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fea9b986fa56bf95 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_999cca801d7699f8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dcd5131c426087d7 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff3a8d840dcfe293 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_013d65b1d1d55caa (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0938d59f7493dab (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c25f4c09895459e3 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8291b0a4aa317742 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50ff7c7233bbc0a3 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60c78fdc4e9e4914 (" + , " 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_76bbda7457cc36cc (" + , " 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_8f58f1b1bec34666 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1b4f3a3bc4f3b794 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ea069e2ba2cf8601 (" + , " 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_b613b0c0ec569562 (" + , " 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_9f106f876716f246 (" + , " 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_fa9b232c6637cc89 (" + , " 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_24737aed34d05ecb (" + , " 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_91f8b10fa951ed47 (" + , " 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_f721c20ba564c353 (" + , " 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_72768a89c25ba867 (" + , " 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_240f608912698a07 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_7a730ab59d8629cb (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ada402472c0aa19 (" + , " 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_911e7a0b7fb8745b (" + , " 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_51f0e730439f0639 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b8180c012b7b4ff8 (" + , " 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_5b703e8393f116a5 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5a08c386908e3a54 (" + , " 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_894456799872d072 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c4f6c221df21549 (" + , " 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_8d7c824104948686 (" + , " 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_399f9921bf61efb0 (" + , " 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_6d33311a162ffbe8 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_89668a522c6fa326 (" + , " 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_e1dcb2194059fd51 (" + , " 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_ba2960ba7b6dc0a1 (" + , " 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_3f7f20b89e11402b (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5dcfae8eb9635a9c (" + , " 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_50f41b0e7b554118 (" + , " 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_70af5283f8a3cbf6 (" + , " 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_c937bd2eb962f01d (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d9a4f912843292a6 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ac066d5ff5a7da1 (" + , " 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_66b8ba85b471dcba (" + , " 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_41b50ffff3a40cfc (" + , " 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_68b26caee7053b3d (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6a9cf5594770e520 (" + , " 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_0c04eff4c6bb57c9 (" + , " 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_e8b6b65fde09aa64 (" + , " 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_196aa936f50f776f (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2e9ea75e86d857d6 (" + , " 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_2f3c164e1fa7dd3c (" + , " 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_7a1bc9e2701863c6 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_365660ad4c68ade0 (" + , " 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_1e9af8fe22ebdec3 (" + , " 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_ac149d3a4d51be87 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e25f1ae66e6c6386 (" + , " 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_9535058880d42b3c (" + , " 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_2e4193ec78c0e752 (" + , " 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_622b84f69e604a97 (" + , " 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_327b31a8d280731c (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2198fb482ff07ac3 (" + , " 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_7211fe18b2d99bc0 (" + , " 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_323bb72315acbf6a (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f8bc76725fb04f25 (" + , " 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_9b01ee9f5c16b27c (" + , " 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_bd462c8006963c77 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6f76109df228fc92 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1de9ba70698463ad (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5d31235bcf07f222 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de8c7157b5b739bf (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_44e766a0af4299ea (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_12df51b9c95857e7 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7de221b4e1665ccd (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff26761ae69c6385 (" + , " 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_264ffa7f6b9663f7 (" + , " 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_cedba7f37bc9af84 (" + , " 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_e2efd555c676d271 (" + , " 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_4b11c716370b1b55 (" + , " 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_b2e79fdae286871b (" + , " 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_e4f63bd99bf45800 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d95d0571bd1b1e72 (" + , " 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_9cfeb80b54ec63ab (" + , " 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_51e7ce9ab7fd0cd8 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1faee54c309e4469 (" + , " 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_71d902eef5188960 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bf498163c063b234 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b170d3ce62a0e69e (" + , " 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_2432caacc1aca965 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_1dda111cc4030af5 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2091cd858fc50968 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_876355a226584db1 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7fde656b556ebfab (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_65dd42d7f6c4da59 (" + , " 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_d4678aecf43f3393 (" + , " 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_3b8b78d86ff58a2e (" + , " 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_a0032ee304623b62 (" + , " 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_5de0dad3cd487c59 (" + , " 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_ec28be1d89cb14dd (" + , " 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_2c085eaefc5723ab (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b078995b44374368 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c1ce92a0573e887 (" + , " 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_edc5218bfac472fc (" + , " 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_a5906c4634fd4b06 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6e0e59b9a301179e (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d698c0a0619fe403 (" + , " 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_0f6a6da63668fdcb (" + , " 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_2e6a4c1071aa740f (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3fdb710d79e3b9f1 (" + , " 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_12558cefb9b91032 (" + , " 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_2229104e3fee7922 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_12eea3fad009e013 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ea20735324e8c994 (" + , " 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_e7213f451f75ac71 (" + , " 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_1dc600efcf74a62b (" + , " 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_9e327ddd09686398 (" + , " 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_7469fb63ee07fe47 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2c61933937d25204 (" + , " 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_8837976d6786e3ff (" + , " 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_f18a5538edb6b989 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_e37afb99ff376ab4 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5204888c6e3ff923 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_553a667def5b0297 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbbc2c47a36108c2 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_96c49dccba2c1a6b (" + , " 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_fd0a16176ee74057 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d6f1c7f470c1dbe5 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_9fb196cb414db0dd" hs_bindgen_9fb196cb414db0dd :: + 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:170: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_9fb196cb414db0dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_4c3a8b5d7f760fe5" hs_bindgen_4c3a8b5d7f760fe5 :: + 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:179: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_4c3a8b5d7f760fe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_8ec3bc271e1bed06" hs_bindgen_8ec3bc271e1bed06 :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_8ec3bc271e1bed06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_e75b72ac6bd90c50" hs_bindgen_e75b72ac6bd90c50 :: + 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:192: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_e75b72ac6bd90c50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_b19c6f227e189833" hs_bindgen_b19c6f227e189833 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_b19c6f227e189833 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_6baa34c0972f7a23" hs_bindgen_6baa34c0972f7a23 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_6baa34c0972f7a23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_efb93e6219d5a97e" hs_bindgen_efb93e6219d5a97e :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_efb93e6219d5a97e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_fa743220398d1cc5" hs_bindgen_fa743220398d1cc5 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_fa743220398d1cc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_a7347bea24cbc15f" hs_bindgen_a7347bea24cbc15f :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_a7347bea24cbc15f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_9d4c5268553f7781" hs_bindgen_9d4c5268553f7781 :: + 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:223: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_9d4c5268553f7781 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_7e8acb14ca7c0f88" hs_bindgen_7e8acb14ca7c0f88 :: + 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:229: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_7e8acb14ca7c0f88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_b88d7ce42dff31f0" hs_bindgen_b88d7ce42dff31f0 :: + 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:235: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_b88d7ce42dff31f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_2208988048bd42dd" hs_bindgen_2208988048bd42dd :: + 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:247: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_2208988048bd42dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_3f9446c334ac9bd3" hs_bindgen_3f9446c334ac9bd3 :: + 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:257: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_3f9446c334ac9bd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_8ab92cbe356dab1e" hs_bindgen_8ab92cbe356dab1e :: + 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:262:28@ + +__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_8ab92cbe356dab1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_17baef7e85b3fafc" hs_bindgen_17baef7e85b3fafc :: + 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:267: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_17baef7e85b3fafc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_043d690630b0a1ba" hs_bindgen_043d690630b0a1ba :: + 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:284: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 "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_043d690630b0a1ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_80de8db4ff619b4b" hs_bindgen_80de8db4ff619b4b :: + 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:296: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_80de8db4ff619b4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_3623f8a4c53d62b1" hs_bindgen_3623f8a4c53d62b1 :: + 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:310: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_3623f8a4c53d62b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_9cbea7fb73417957" hs_bindgen_9cbea7fb73417957 :: + 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:318: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_9cbea7fb73417957 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_c8f198e8d567da11" hs_bindgen_c8f198e8d567da11 :: + 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:328: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_c8f198e8d567da11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_45b1e680c01aa3d6" hs_bindgen_45b1e680c01aa3d6 :: + 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:338: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_45b1e680c01aa3d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_868e662bf7625f43" hs_bindgen_868e662bf7625f43 :: + 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:348: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_868e662bf7625f43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_55252b58dc42b962" hs_bindgen_55252b58dc42b962 :: + 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:355: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_55252b58dc42b962 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_31d61f070bf8a885" hs_bindgen_31d61f070bf8a885 :: + 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:369: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_31d61f070bf8a885 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_40d919f1ee2429fd" hs_bindgen_40d919f1ee2429fd :: + 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:377: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_40d919f1ee2429fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_98922d2477832276" hs_bindgen_98922d2477832276 :: + 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:385: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_98922d2477832276 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_d5d99e52f638fb94" hs_bindgen_d5d99e52f638fb94 :: + 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:393: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_d5d99e52f638fb94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_fb96f0a0c7edbc6d" hs_bindgen_fb96f0a0c7edbc6d :: + 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:402: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_fb96f0a0c7edbc6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_f4bf36fb1e6889ef" hs_bindgen_f4bf36fb1e6889ef :: + 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:412: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_f4bf36fb1e6889ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_13c139d5c6269558" hs_bindgen_13c139d5c6269558 :: + 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:420: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_13c139d5c6269558 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_9ac681832bf9b151" hs_bindgen_9ac681832bf9b151 :: + 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:427: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_9ac681832bf9b151 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_c0220f98f37c41b1" hs_bindgen_c0220f98f37c41b1 :: + 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:435: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_c0220f98f37c41b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_04e56426456bd1ea" hs_bindgen_04e56426456bd1ea :: + 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:450: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_04e56426456bd1ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_e9a67866209e2539" hs_bindgen_e9a67866209e2539 :: + 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:458: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_e9a67866209e2539 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_5efa5040a26b0763" hs_bindgen_5efa5040a26b0763 :: + 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:467: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_5efa5040a26b0763 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_b26de451c7756a7c" hs_bindgen_b26de451c7756a7c :: + 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:476: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_b26de451c7756a7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_82681722e0512857" hs_bindgen_82681722e0512857 :: + 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:485: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_82681722e0512857 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_a6c4e4e508fa7c1f" hs_bindgen_a6c4e4e508fa7c1f :: + 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:495: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_a6c4e4e508fa7c1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_1cb7c7c488d4bd1f" hs_bindgen_1cb7c7c488d4bd1f :: + 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:503: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_1cb7c7c488d4bd1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_28d090a373d239d2" hs_bindgen_28d090a373d239d2 :: + 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:511: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_28d090a373d239d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_002fbf1aabd09903" hs_bindgen_002fbf1aabd09903 :: + 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:521: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_002fbf1aabd09903 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_5f63e893d40b5f84" hs_bindgen_5f63e893d40b5f84 :: + 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:531: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_5f63e893d40b5f84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_801c9765a387ea68" hs_bindgen_801c9765a387ea68 :: + 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:545: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_801c9765a387ea68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_a9f5a1701f2f5a8d" hs_bindgen_a9f5a1701f2f5a8d :: + 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:550: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_a9f5a1701f2f5a8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_8d1d4461c811b131" hs_bindgen_8d1d4461c811b131 :: + 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:555: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_8d1d4461c811b131 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_73c5d87fa3566555" hs_bindgen_73c5d87fa3566555 :: + 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:560: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_73c5d87fa3566555 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_1d74261f12bbf529" hs_bindgen_1d74261f12bbf529 :: + 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:565: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_1d74261f12bbf529 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_2d96d0d8958e8648" hs_bindgen_2d96d0d8958e8648 :: + 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:570: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_2d96d0d8958e8648 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_7f6deb72496aa18a" hs_bindgen_7f6deb72496aa18a :: + 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:577: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_7f6deb72496aa18a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_62b571458df442ca" hs_bindgen_62b571458df442ca :: + 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:582: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_62b571458df442ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_f1560812646f7c4b" hs_bindgen_f1560812646f7c4b :: + 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:588: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_f1560812646f7c4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_e2a3f7d6528ab680" hs_bindgen_e2a3f7d6528ab680 :: + 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:594: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_e2a3f7d6528ab680 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_9131146bfcf6cc2e" hs_bindgen_9131146bfcf6cc2e :: + 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:600:5@ + +__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_9131146bfcf6cc2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_caf735a1502cb06b" hs_bindgen_caf735a1502cb06b :: + 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:606:5@ + +__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_caf735a1502cb06b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_d7d3bbdc2dec7f86" hs_bindgen_d7d3bbdc2dec7f86 :: + 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:611: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_d7d3bbdc2dec7f86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_6ab6c697c2aa359b" hs_bindgen_6ab6c697c2aa359b :: + 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:621:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_6ab6c697c2aa359b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_875be342e53699cb" hs_bindgen_875be342e53699cb :: + 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:626: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_875be342e53699cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_8c8cf8bff852a8ba" hs_bindgen_8c8cf8bff852a8ba :: + 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:631: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_8c8cf8bff852a8ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_acf5628a9ff5ce48" hs_bindgen_acf5628a9ff5ce48 :: + 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_acf5628a9ff5ce48 + +{-| + + 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:658: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_acf5628a9ff5ce48 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_6a049e1b6c4e3a2c" hs_bindgen_6a049e1b6c4e3a2c :: + 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:670:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_6a049e1b6c4e3a2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_e5fd86166aeedb21" hs_bindgen_e5fd86166aeedb21 :: + 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:676:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_e5fd86166aeedb21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_171920c63cb62ffa" hs_bindgen_171920c63cb62ffa :: + 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_171920c63cb62ffa + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:695: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_171920c63cb62ffa x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_e6a9e2d39f9f3b94" hs_bindgen_e6a9e2d39f9f3b94 :: + 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_e6a9e2d39f9f3b94 + +{-| 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:728: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_e6a9e2d39f9f3b94 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_1896cb7e780e6d30" hs_bindgen_1896cb7e780e6d30 :: + 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_1896cb7e780e6d30 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:752: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_1896cb7e780e6d30 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_deb720a59f9681bb" hs_bindgen_deb720a59f9681bb :: + 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_deb720a59f9681bb + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:779: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_deb720a59f9681bb x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_94f4cb0f1fb386b2" hs_bindgen_94f4cb0f1fb386b2 :: + 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_94f4cb0f1fb386b2 + +{-| 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:798: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_94f4cb0f1fb386b2 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_bb162a51263cbed6" hs_bindgen_bb162a51263cbed6 :: + 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_bb162a51263cbed6 + +{-| 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:821: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_bb162a51263cbed6 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_6_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_2e55a58ee34b5e5d" hs_bindgen_2e55a58ee34b5e5d :: + 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:839: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_2e55a58ee34b5e5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_cc5beb37ff6a658b" hs_bindgen_cc5beb37ff6a658b :: + 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:845: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_cc5beb37ff6a658b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_95d472703ccc17be" hs_bindgen_95d472703ccc17be :: + 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:851: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_95d472703ccc17be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_a9d6fe4222bbac00" hs_bindgen_a9d6fe4222bbac00 :: + 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_a9d6fe4222bbac00 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:856: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_a9d6fe4222bbac00 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_f5b0cfc3fdda27b5" hs_bindgen_f5b0cfc3fdda27b5 :: + 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:862: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_f5b0cfc3fdda27b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_1a97712dec619ee3" hs_bindgen_1a97712dec619ee3 :: + 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_1a97712dec619ee3 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:868: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_1a97712dec619ee3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_4e9dcb6f87e2542e" hs_bindgen_4e9dcb6f87e2542e :: + 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_4e9dcb6f87e2542e + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:874: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_4e9dcb6f87e2542e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_60f65c85fb560569" hs_bindgen_60f65c85fb560569 :: + 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:882: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_60f65c85fb560569 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_734785d56bc5e1a0" hs_bindgen_734785d56bc5e1a0 :: + 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:892: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_734785d56bc5e1a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_85a4a9022e85473c" hs_bindgen_85a4a9022e85473c :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:905: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_85a4a9022e85473c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_d2ff20c8c6320ac5" hs_bindgen_d2ff20c8c6320ac5 :: + 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:911:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_d2ff20c8c6320ac5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_7d6736d6320b7c02" hs_bindgen_7d6736d6320b7c02 :: + 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:916: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_7d6736d6320b7c02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_adeb050998adbffb" hs_bindgen_adeb050998adbffb :: + 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:921:28@ + +__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_adeb050998adbffb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_56f60f7555502347" hs_bindgen_56f60f7555502347 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_56f60f7555502347 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_4c5b84a6db96a09d" hs_bindgen_4c5b84a6db96a09d :: + 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:931: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_4c5b84a6db96a09d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_dce2d8899c1426f8" hs_bindgen_dce2d8899c1426f8 :: + 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:936: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_dce2d8899c1426f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_3262f6b64131638f" hs_bindgen_3262f6b64131638f :: + 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:941: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_3262f6b64131638f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_abe603e34d16ed00" hs_bindgen_abe603e34d16ed00 :: + 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:947: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_abe603e34d16ed00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_2c7171686db7b01f" hs_bindgen_2c7171686db7b01f :: + 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:952: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_2c7171686db7b01f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_f7bef0890967f451" hs_bindgen_f7bef0890967f451 :: + 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:957: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_f7bef0890967f451 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_bdf338372354700d" hs_bindgen_bdf338372354700d :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:962: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_bdf338372354700d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_8f42c254fa42eb52" hs_bindgen_8f42c254fa42eb52 :: + 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_8f42c254fa42eb52 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:967: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_8f42c254fa42eb52 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_7f4dab287e000463" hs_bindgen_7f4dab287e000463 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:972: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_7f4dab287e000463 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_c2f68f9d15829a6b" hs_bindgen_c2f68f9d15829a6b :: + 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:979: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_c2f68f9d15829a6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_110a4249b0a03161" hs_bindgen_110a4249b0a03161 :: + 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:984: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_110a4249b0a03161 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_7c5cdac073aaeea5" hs_bindgen_7c5cdac073aaeea5 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:986: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_7c5cdac073aaeea5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_c98ddde81daa06d5" hs_bindgen_c98ddde81daa06d5 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:988: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_c98ddde81daa06d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_b794c67431793e7d" hs_bindgen_b794c67431793e7d :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:990: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_b794c67431793e7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_6f2f7a850de31f67" hs_bindgen_6f2f7a850de31f67 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:991: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_6f2f7a850de31f67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_13bf3e598d495ea2" hs_bindgen_13bf3e598d495ea2 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:993: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_13bf3e598d495ea2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_1c9cf992bc8a0d8c" hs_bindgen_1c9cf992bc8a0d8c :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:994: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_1c9cf992bc8a0d8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_f230d428792f3bf0" hs_bindgen_f230d428792f3bf0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:996: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_f230d428792f3bf0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_ebdaa6cca6b85b8d" hs_bindgen_ebdaa6cca6b85b8d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:997: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_ebdaa6cca6b85b8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_2e4b16027553c817" hs_bindgen_2e4b16027553c817 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:998: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_2e4b16027553c817 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_ff8777d986f6f01f" hs_bindgen_ff8777d986f6f01f :: + 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:1001: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_ff8777d986f6f01f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_c12d7f85dc27d4e1" hs_bindgen_c12d7f85dc27d4e1 :: + 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:1004: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_c12d7f85dc27d4e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_15a4f020aac10a93" hs_bindgen_15a4f020aac10a93 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1011: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_15a4f020aac10a93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_ddda567a11644d2e" hs_bindgen_ddda567a11644d2e :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1018: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_ddda567a11644d2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_85e154b32af42458" hs_bindgen_85e154b32af42458 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1023: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_85e154b32af42458 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_88c0813ad565a991" hs_bindgen_88c0813ad565a991 :: + 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:1027: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_88c0813ad565a991 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_90e20b9a55906b58" hs_bindgen_90e20b9a55906b58 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1029: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_90e20b9a55906b58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_f06bd94ab049f602" hs_bindgen_f06bd94ab049f602 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1030: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_f06bd94ab049f602 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_5285ccaabfcb7a31" hs_bindgen_5285ccaabfcb7a31 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1032: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_5285ccaabfcb7a31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_40728b3333c55e65" hs_bindgen_40728b3333c55e65 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1034: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_40728b3333c55e65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_5660a53eb67982e8" hs_bindgen_5660a53eb67982e8 :: + 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:1037: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_5660a53eb67982e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_581a6e5b925b3b08" hs_bindgen_581a6e5b925b3b08 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1039: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_581a6e5b925b3b08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_161ef3c58bb5df6e" hs_bindgen_161ef3c58bb5df6e :: + 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:1046: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_161ef3c58bb5df6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_433d0c720c63a76e" hs_bindgen_433d0c720c63a76e :: + 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:1053: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_433d0c720c63a76e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_c783d1fd7f17d3f0" hs_bindgen_c783d1fd7f17d3f0 :: + 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:1058: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_c783d1fd7f17d3f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_8fc4988690370099" hs_bindgen_8fc4988690370099 :: + 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:1063: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_8fc4988690370099 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_efc6a8cfb7ca8835" hs_bindgen_efc6a8cfb7ca8835 :: + 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:1081: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_efc6a8cfb7ca8835 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_b14bd0c7ba1bc498" hs_bindgen_b14bd0c7ba1bc498 :: + 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:1092: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_b14bd0c7ba1bc498 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_fbee517c48f1823c" hs_bindgen_fbee517c48f1823c :: + 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:1108: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_fbee517c48f1823c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_c8e07c5f4c71c5c6" hs_bindgen_c8e07c5f4c71c5c6 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1112: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_c8e07c5f4c71c5c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_789f76d5a68e2af1" hs_bindgen_789f76d5a68e2af1 :: + 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:1115: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_789f76d5a68e2af1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_94eb73192a0bc65d" hs_bindgen_94eb73192a0bc65d :: + 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:1117: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_94eb73192a0bc65d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_4e111f4d9affb74a" hs_bindgen_4e111f4d9affb74a :: + 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:1119: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_4e111f4d9affb74a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_349d863cb2456e11" hs_bindgen_349d863cb2456e11 :: + 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:1121: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_349d863cb2456e11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_0a3c6e7f9efd7b53" hs_bindgen_0a3c6e7f9efd7b53 :: + 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:1123: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_0a3c6e7f9efd7b53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_503e303c119c10db" hs_bindgen_503e303c119c10db :: + 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:1143: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_503e303c119c10db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_bf1bd8f1c16585a2" hs_bindgen_bf1bd8f1c16585a2 :: + 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:1165: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_bf1bd8f1c16585a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_f7a8d0c2a8875347" hs_bindgen_f7a8d0c2a8875347 :: + 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_f7a8d0c2a8875347 + +{-| 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:1173: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_f7a8d0c2a8875347 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_1f604ae8c5dd3f9d" hs_bindgen_1f604ae8c5dd3f9d :: + 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:1178:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_1f604ae8c5dd3f9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_f0dab4a8045b4beb" hs_bindgen_f0dab4a8045b4beb :: + 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:1191: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_f0dab4a8045b4beb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_895efa32f35c2cbe" hs_bindgen_895efa32f35c2cbe :: + 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:1196: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_895efa32f35c2cbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_9c6e0aba51a9a7d9" hs_bindgen_9c6e0aba51a9a7d9 :: + 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:1201: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_9c6e0aba51a9a7d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_7b0d1e1394a4da4d" hs_bindgen_7b0d1e1394a4da4d :: + 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:1206: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_7b0d1e1394a4da4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_d791d5cdde1ade2f" hs_bindgen_d791d5cdde1ade2f :: + 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:1208: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_d791d5cdde1ade2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_dd7ee82530373cb0" hs_bindgen_dd7ee82530373cb0 :: + 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:1215: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_dd7ee82530373cb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_754320b77b7c7635" hs_bindgen_754320b77b7c7635 :: + 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:1230: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_754320b77b7c7635 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_e345fccd35236a08" hs_bindgen_e345fccd35236a08 :: + 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:1245: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_e345fccd35236a08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_05f97c49863cfb58" hs_bindgen_05f97c49863cfb58 :: + 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:1262: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_05f97c49863cfb58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_f307a74c4b060a1a" hs_bindgen_f307a74c4b060a1a :: + 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:1277: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_f307a74c4b060a1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_3f520f2fef690236" hs_bindgen_3f520f2fef690236 :: + 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:1293: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_3f520f2fef690236 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_df5e8fe042527419" hs_bindgen_df5e8fe042527419 :: + 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:1308: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_df5e8fe042527419 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_3cd95c3d7b916362" hs_bindgen_3cd95c3d7b916362 :: + 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_3cd95c3d7b916362 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1319: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_3cd95c3d7b916362 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_80d1d32d28e32ddb" hs_bindgen_80d1d32d28e32ddb :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1321: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_80d1d32d28e32ddb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_c3a19b8bf0219a10" hs_bindgen_c3a19b8bf0219a10 :: + 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:1323: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_c3a19b8bf0219a10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_56a6eddfa0b49887" hs_bindgen_56a6eddfa0b49887 :: + 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:1328: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_56a6eddfa0b49887 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_63f678df0848396e" hs_bindgen_63f678df0848396e :: + 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:1333: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_63f678df0848396e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_db0dfb8f53fcffec" hs_bindgen_db0dfb8f53fcffec :: + 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:1338: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_db0dfb8f53fcffec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_b1e36b9ddda88303" hs_bindgen_b1e36b9ddda88303 :: + 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:1340: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_b1e36b9ddda88303 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_44eb8feef411244e" hs_bindgen_44eb8feef411244e :: + 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:1345: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_44eb8feef411244e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_aa3a0e1911470817" hs_bindgen_aa3a0e1911470817 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1347: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_aa3a0e1911470817 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_7775ba34edc00128" hs_bindgen_7775ba34edc00128 :: + 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:1350: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_7775ba34edc00128 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_1f55c0bced9ce335" hs_bindgen_1f55c0bced9ce335 :: + 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:1355:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_1f55c0bced9ce335 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_f8779ee24ee764a7" hs_bindgen_f8779ee24ee764a7 :: + 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:1360: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_f8779ee24ee764a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_9655920a3273a645" hs_bindgen_9655920a3273a645 :: + 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:1362: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_9655920a3273a645 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_665278ed0103752f" hs_bindgen_665278ed0103752f :: + 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:1367: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_665278ed0103752f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_11a7fb991892212c" hs_bindgen_11a7fb991892212c :: + 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_11a7fb991892212c + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1369: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_11a7fb991892212c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_47cdfefe05cbdb7f" hs_bindgen_47cdfefe05cbdb7f :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1372: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_47cdfefe05cbdb7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_73be923804973821" hs_bindgen_73be923804973821 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1374: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_73be923804973821 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_498f1686fc95886d" hs_bindgen_498f1686fc95886d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1376: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_498f1686fc95886d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_0710d201c02d58c8" hs_bindgen_0710d201c02d58c8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1378: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_0710d201c02d58c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_86694b779956559f" hs_bindgen_86694b779956559f :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1380: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_86694b779956559f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_720f8862f7908f6d" hs_bindgen_720f8862f7908f6d :: + 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:1383: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_720f8862f7908f6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_95378675f58efc33" hs_bindgen_95378675f58efc33 :: + 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:1385: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_95378675f58efc33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_9018c2cd406a6fe3" hs_bindgen_9018c2cd406a6fe3 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1388: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_9018c2cd406a6fe3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_445916b073f88df6" hs_bindgen_445916b073f88df6 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1390: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_445916b073f88df6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_54f3d13e93be3eca" hs_bindgen_54f3d13e93be3eca :: + 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:1396: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_54f3d13e93be3eca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_86ed85312c2b63df" hs_bindgen_86ed85312c2b63df :: + 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:1399: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_86ed85312c2b63df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_de881c52ed59a8cb" hs_bindgen_de881c52ed59a8cb :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1402: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_de881c52ed59a8cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_085d99b610a26afd" hs_bindgen_085d99b610a26afd :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1405: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_085d99b610a26afd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_a8af19805a5eccf7" hs_bindgen_a8af19805a5eccf7 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1407: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_a8af19805a5eccf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_785a181fcd07f23c" hs_bindgen_785a181fcd07f23c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1409: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_785a181fcd07f23c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_fc8d0d9fead091ad" hs_bindgen_fc8d0d9fead091ad :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1411: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_fc8d0d9fead091ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_f2a9309648ef6ef0" hs_bindgen_f2a9309648ef6ef0 :: + 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:1426: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_f2a9309648ef6ef0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_640f47c1b077f0df" hs_bindgen_640f47c1b077f0df :: + 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:1440: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_640f47c1b077f0df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_bf21ddd907e738c4" hs_bindgen_bf21ddd907e738c4 :: + 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:1458: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_bf21ddd907e738c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_9cbdfb1125fb8712" hs_bindgen_9cbdfb1125fb8712 :: + 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:1473: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_9cbdfb1125fb8712 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_68888089ac53e6ba" hs_bindgen_68888089ac53e6ba :: + 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_68888089ac53e6ba + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1479: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_68888089ac53e6ba x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_7105124c8bc88bf8" hs_bindgen_7105124c8bc88bf8 :: + 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_7105124c8bc88bf8 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_7105124c8bc88bf8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_522b754aef87c132" hs_bindgen_522b754aef87c132 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1483: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_522b754aef87c132 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_758db4af60e924ae" hs_bindgen_758db4af60e924ae :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1485: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_758db4af60e924ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_9e7cb3f64b5b0fe0" hs_bindgen_9e7cb3f64b5b0fe0 :: + 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_9e7cb3f64b5b0fe0 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1491: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_9e7cb3f64b5b0fe0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_8d748692147d448e" hs_bindgen_8d748692147d448e :: + 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_8d748692147d448e + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_8d748692147d448e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_92608e1bd1b8c2f7" hs_bindgen_92608e1bd1b8c2f7 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1495: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_92608e1bd1b8c2f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_fea9b986fa56bf95" hs_bindgen_fea9b986fa56bf95 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1497: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_fea9b986fa56bf95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_999cca801d7699f8" hs_bindgen_999cca801d7699f8 :: + 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_999cca801d7699f8 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1503: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_999cca801d7699f8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_dcd5131c426087d7" hs_bindgen_dcd5131c426087d7 :: + 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_dcd5131c426087d7 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_dcd5131c426087d7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_ff3a8d840dcfe293" hs_bindgen_ff3a8d840dcfe293 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1507: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_ff3a8d840dcfe293 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_013d65b1d1d55caa" hs_bindgen_013d65b1d1d55caa :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1509: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_013d65b1d1d55caa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_f0938d59f7493dab" hs_bindgen_f0938d59f7493dab :: + 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_f0938d59f7493dab + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1515: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_f0938d59f7493dab x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_c25f4c09895459e3" hs_bindgen_c25f4c09895459e3 :: + 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_c25f4c09895459e3 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_c25f4c09895459e3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_8291b0a4aa317742" hs_bindgen_8291b0a4aa317742 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1519: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_8291b0a4aa317742 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_50ff7c7233bbc0a3" hs_bindgen_50ff7c7233bbc0a3 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1521: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_50ff7c7233bbc0a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_60c78fdc4e9e4914" hs_bindgen_60c78fdc4e9e4914 :: + 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_60c78fdc4e9e4914 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1528: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_60c78fdc4e9e4914 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_76bbda7457cc36cc" hs_bindgen_76bbda7457cc36cc :: + 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_76bbda7457cc36cc + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1531: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_76bbda7457cc36cc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_8f58f1b1bec34666" hs_bindgen_8f58f1b1bec34666 :: + 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_8f58f1b1bec34666 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1537: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_8f58f1b1bec34666 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_1b4f3a3bc4f3b794" hs_bindgen_1b4f3a3bc4f3b794 :: + 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_1b4f3a3bc4f3b794 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_1b4f3a3bc4f3b794 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_ea069e2ba2cf8601" hs_bindgen_ea069e2ba2cf8601 :: + 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:1543: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_ea069e2ba2cf8601 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_b613b0c0ec569562" hs_bindgen_b613b0c0ec569562 :: + 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:1547: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_b613b0c0ec569562 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_9f106f876716f246" hs_bindgen_9f106f876716f246 :: + 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_9f106f876716f246 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1554: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_9f106f876716f246 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_fa9b232c6637cc89" hs_bindgen_fa9b232c6637cc89 :: + 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_fa9b232c6637cc89 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1557: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_fa9b232c6637cc89 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_24737aed34d05ecb" hs_bindgen_24737aed34d05ecb :: + 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_24737aed34d05ecb + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1564: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_24737aed34d05ecb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_91f8b10fa951ed47" hs_bindgen_91f8b10fa951ed47 :: + 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_91f8b10fa951ed47 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1567: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_91f8b10fa951ed47 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_f721c20ba564c353" hs_bindgen_f721c20ba564c353 :: + 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_f721c20ba564c353 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1574: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_f721c20ba564c353 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_72768a89c25ba867" hs_bindgen_72768a89c25ba867 :: + 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_72768a89c25ba867 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1577: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_72768a89c25ba867 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_240f608912698a07" hs_bindgen_240f608912698a07 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1583: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_240f608912698a07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_7a730ab59d8629cb" hs_bindgen_7a730ab59d8629cb :: + 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:1586: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_7a730ab59d8629cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_2ada402472c0aa19" hs_bindgen_2ada402472c0aa19 :: + 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:1589: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_2ada402472c0aa19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_911e7a0b7fb8745b" hs_bindgen_911e7a0b7fb8745b :: + 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:1592: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_911e7a0b7fb8745b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_51f0e730439f0639" hs_bindgen_51f0e730439f0639 :: + 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:1595: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_51f0e730439f0639 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_b8180c012b7b4ff8" hs_bindgen_b8180c012b7b4ff8 :: + 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:1598: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_b8180c012b7b4ff8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_5b703e8393f116a5" hs_bindgen_5b703e8393f116a5 :: + 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:1601: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_5b703e8393f116a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_5a08c386908e3a54" hs_bindgen_5a08c386908e3a54 :: + 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:1605: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_5a08c386908e3a54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_894456799872d072" hs_bindgen_894456799872d072 :: + 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:1609: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_894456799872d072 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_1c4f6c221df21549" hs_bindgen_1c4f6c221df21549 :: + 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:1612: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_1c4f6c221df21549 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_8d7c824104948686" hs_bindgen_8d7c824104948686 :: + 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:1619: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_8d7c824104948686 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_399f9921bf61efb0" hs_bindgen_399f9921bf61efb0 :: + 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:1627: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_399f9921bf61efb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_6d33311a162ffbe8" hs_bindgen_6d33311a162ffbe8 :: + 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:1632: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_6d33311a162ffbe8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_89668a522c6fa326" hs_bindgen_89668a522c6fa326 :: + 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:1635: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_89668a522c6fa326 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_e1dcb2194059fd51" hs_bindgen_e1dcb2194059fd51 :: + 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_e1dcb2194059fd51 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1638: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_e1dcb2194059fd51 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_ba2960ba7b6dc0a1" hs_bindgen_ba2960ba7b6dc0a1 :: + 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:1651: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_ba2960ba7b6dc0a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_3f7f20b89e11402b" hs_bindgen_3f7f20b89e11402b :: + 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:1656: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_3f7f20b89e11402b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_5dcfae8eb9635a9c" hs_bindgen_5dcfae8eb9635a9c :: + 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:1659: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_5dcfae8eb9635a9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_50f41b0e7b554118" hs_bindgen_50f41b0e7b554118 :: + 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_50f41b0e7b554118 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1662: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_50f41b0e7b554118 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_70af5283f8a3cbf6" hs_bindgen_70af5283f8a3cbf6 :: + 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:1674: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_70af5283f8a3cbf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_c937bd2eb962f01d" hs_bindgen_c937bd2eb962f01d :: + 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:1679: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_c937bd2eb962f01d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_d9a4f912843292a6" hs_bindgen_d9a4f912843292a6 :: + 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:1681: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_d9a4f912843292a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_3ac066d5ff5a7da1" hs_bindgen_3ac066d5ff5a7da1 :: + 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_3ac066d5ff5a7da1 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1683: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_3ac066d5ff5a7da1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_66b8ba85b471dcba" hs_bindgen_66b8ba85b471dcba :: + 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:1686: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_66b8ba85b471dcba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_41b50ffff3a40cfc" hs_bindgen_41b50ffff3a40cfc :: + 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:1694: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_41b50ffff3a40cfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_68b26caee7053b3d" hs_bindgen_68b26caee7053b3d :: + 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:1702: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_68b26caee7053b3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_6a9cf5594770e520" hs_bindgen_6a9cf5594770e520 :: + 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_6a9cf5594770e520 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1704: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_6a9cf5594770e520 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_0c04eff4c6bb57c9" hs_bindgen_0c04eff4c6bb57c9 :: + 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_0c04eff4c6bb57c9 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1705: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_0c04eff4c6bb57c9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_e8b6b65fde09aa64" hs_bindgen_e8b6b65fde09aa64 :: + 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:1713: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_e8b6b65fde09aa64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_196aa936f50f776f" hs_bindgen_196aa936f50f776f :: + 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:1718: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_196aa936f50f776f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_2e9ea75e86d857d6" hs_bindgen_2e9ea75e86d857d6 :: + 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:1720: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_2e9ea75e86d857d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_2f3c164e1fa7dd3c" hs_bindgen_2f3c164e1fa7dd3c :: + 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:1723: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_2f3c164e1fa7dd3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_7a1bc9e2701863c6" hs_bindgen_7a1bc9e2701863c6 :: + 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:1725: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_7a1bc9e2701863c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_365660ad4c68ade0" hs_bindgen_365660ad4c68ade0 :: + 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_365660ad4c68ade0 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1728: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_365660ad4c68ade0 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_1e9af8fe22ebdec3" hs_bindgen_1e9af8fe22ebdec3 :: + 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:1742: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_1e9af8fe22ebdec3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_ac149d3a4d51be87" hs_bindgen_ac149d3a4d51be87 :: + 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:1747: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_ac149d3a4d51be87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_e25f1ae66e6c6386" hs_bindgen_e25f1ae66e6c6386 :: + 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:1750: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_e25f1ae66e6c6386 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_9535058880d42b3c" hs_bindgen_9535058880d42b3c :: + 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:1755: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_9535058880d42b3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_2e4193ec78c0e752" hs_bindgen_2e4193ec78c0e752 :: + 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_2e4193ec78c0e752 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1759: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_2e4193ec78c0e752 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_622b84f69e604a97" hs_bindgen_622b84f69e604a97 :: + 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:1772: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_622b84f69e604a97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_327b31a8d280731c" hs_bindgen_327b31a8d280731c :: + 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:1777: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_327b31a8d280731c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_2198fb482ff07ac3" hs_bindgen_2198fb482ff07ac3 :: + 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:1780: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_2198fb482ff07ac3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_7211fe18b2d99bc0" hs_bindgen_7211fe18b2d99bc0 :: + 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_7211fe18b2d99bc0 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1785: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_7211fe18b2d99bc0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_323bb72315acbf6a" hs_bindgen_323bb72315acbf6a :: + 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:1798: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_323bb72315acbf6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_f8bc76725fb04f25" hs_bindgen_f8bc76725fb04f25 :: + 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_f8bc76725fb04f25 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1805: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_f8bc76725fb04f25 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_9b01ee9f5c16b27c" hs_bindgen_9b01ee9f5c16b27c :: + 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_9b01ee9f5c16b27c + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1820: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_9b01ee9f5c16b27c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_bd462c8006963c77" hs_bindgen_bd462c8006963c77 :: + 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_bd462c8006963c77 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1835: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_bd462c8006963c77 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_6f76109df228fc92" hs_bindgen_6f76109df228fc92 :: + 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:1836: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_6f76109df228fc92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_1de9ba70698463ad" hs_bindgen_1de9ba70698463ad :: + 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:1841: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_1de9ba70698463ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_5d31235bcf07f222" hs_bindgen_5d31235bcf07f222 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1843: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_5d31235bcf07f222 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_de8c7157b5b739bf" hs_bindgen_de8c7157b5b739bf :: + 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:1846: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_de8c7157b5b739bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_44e766a0af4299ea" hs_bindgen_44e766a0af4299ea :: + 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:1847: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_44e766a0af4299ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_12df51b9c95857e7" hs_bindgen_12df51b9c95857e7 :: + 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:1849: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_12df51b9c95857e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_7de221b4e1665ccd" hs_bindgen_7de221b4e1665ccd :: + 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:1850: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_7de221b4e1665ccd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_ff26761ae69c6385" hs_bindgen_ff26761ae69c6385 :: + 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:1853: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_ff26761ae69c6385 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_264ffa7f6b9663f7" hs_bindgen_264ffa7f6b9663f7 :: + 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:1855: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_264ffa7f6b9663f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_cedba7f37bc9af84" hs_bindgen_cedba7f37bc9af84 :: + 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:1856: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_cedba7f37bc9af84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_e2efd555c676d271" hs_bindgen_e2efd555c676d271 :: + 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:1857: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_e2efd555c676d271 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_4b11c716370b1b55" hs_bindgen_4b11c716370b1b55 :: + 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:1859: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_4b11c716370b1b55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_b2e79fdae286871b" hs_bindgen_b2e79fdae286871b :: + 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:1862: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_b2e79fdae286871b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_e4f63bd99bf45800" hs_bindgen_e4f63bd99bf45800 :: + 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:1864: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_e4f63bd99bf45800 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_d95d0571bd1b1e72" hs_bindgen_d95d0571bd1b1e72 :: + 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:1867: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_d95d0571bd1b1e72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_9cfeb80b54ec63ab" hs_bindgen_9cfeb80b54ec63ab :: + 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:1871: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_9cfeb80b54ec63ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_51e7ce9ab7fd0cd8" hs_bindgen_51e7ce9ab7fd0cd8 :: + 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:1874: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_51e7ce9ab7fd0cd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_1faee54c309e4469" hs_bindgen_1faee54c309e4469 :: + 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:1877: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_1faee54c309e4469 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_71d902eef5188960" hs_bindgen_71d902eef5188960 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1893: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_71d902eef5188960 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_bf498163c063b234" hs_bindgen_bf498163c063b234 :: + 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:1899: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_bf498163c063b234 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_b170d3ce62a0e69e" hs_bindgen_b170d3ce62a0e69e :: + 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:1910: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_b170d3ce62a0e69e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_2432caacc1aca965" hs_bindgen_2432caacc1aca965 :: + 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:1925: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_2432caacc1aca965 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_1dda111cc4030af5" hs_bindgen_1dda111cc4030af5 :: + 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:1933: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_1dda111cc4030af5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_2091cd858fc50968" hs_bindgen_2091cd858fc50968 :: + 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_2091cd858fc50968 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1935: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_2091cd858fc50968 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_876355a226584db1" hs_bindgen_876355a226584db1 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1937: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_876355a226584db1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_7fde656b556ebfab" hs_bindgen_7fde656b556ebfab :: + 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:1943: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_7fde656b556ebfab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_65dd42d7f6c4da59" hs_bindgen_65dd42d7f6c4da59 :: + 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:1950: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_65dd42d7f6c4da59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_d4678aecf43f3393" hs_bindgen_d4678aecf43f3393 :: + 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_d4678aecf43f3393 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1968: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_d4678aecf43f3393 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_3b8b78d86ff58a2e" hs_bindgen_3b8b78d86ff58a2e :: + 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_3b8b78d86ff58a2e + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1977: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_3b8b78d86ff58a2e (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_a0032ee304623b62" hs_bindgen_a0032ee304623b62 :: + 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_a0032ee304623b62 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1985: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_a0032ee304623b62 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_5de0dad3cd487c59" hs_bindgen_5de0dad3cd487c59 :: + 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_5de0dad3cd487c59 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1995: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_5de0dad3cd487c59 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_ec28be1d89cb14dd" hs_bindgen_ec28be1d89cb14dd :: + 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_ec28be1d89cb14dd + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2014: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_ec28be1d89cb14dd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_2c085eaefc5723ab" hs_bindgen_2c085eaefc5723ab :: + 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:2021:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_2c085eaefc5723ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_b078995b44374368" hs_bindgen_b078995b44374368 :: + 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:2027: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_b078995b44374368 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_3c1ce92a0573e887" hs_bindgen_3c1ce92a0573e887 :: + 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:2033: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_3c1ce92a0573e887 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_edc5218bfac472fc" hs_bindgen_edc5218bfac472fc :: + 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_edc5218bfac472fc + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2046: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_edc5218bfac472fc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_a5906c4634fd4b06" hs_bindgen_a5906c4634fd4b06 :: + 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:2054:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_a5906c4634fd4b06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_6e0e59b9a301179e" hs_bindgen_6e0e59b9a301179e :: + 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:2063: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_6e0e59b9a301179e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_d698c0a0619fe403" hs_bindgen_d698c0a0619fe403 :: + 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:2074: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_d698c0a0619fe403 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_0f6a6da63668fdcb" hs_bindgen_0f6a6da63668fdcb :: + 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_0f6a6da63668fdcb + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2085: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_0f6a6da63668fdcb x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_2e6a4c1071aa740f" hs_bindgen_2e6a4c1071aa740f :: + 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:2092:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_2e6a4c1071aa740f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_3fdb710d79e3b9f1" hs_bindgen_3fdb710d79e3b9f1 :: + 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_3fdb710d79e3b9f1 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2095: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_3fdb710d79e3b9f1 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_12558cefb9b91032" hs_bindgen_12558cefb9b91032 :: + 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_12558cefb9b91032 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2098: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_12558cefb9b91032 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_2229104e3fee7922" hs_bindgen_2229104e3fee7922 :: + 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:2110: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_2229104e3fee7922 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_12eea3fad009e013" hs_bindgen_12eea3fad009e013 :: + 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:2118: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_12eea3fad009e013 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_ea20735324e8c994" hs_bindgen_ea20735324e8c994 :: + 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_ea20735324e8c994 + +{-| 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:2133: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_ea20735324e8c994 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_e7213f451f75ac71" hs_bindgen_e7213f451f75ac71 :: + 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_e7213f451f75ac71 + +{-| 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:2152: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_e7213f451f75ac71 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_1dc600efcf74a62b" hs_bindgen_1dc600efcf74a62b :: + 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_1dc600efcf74a62b + +{-| 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:2168: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_1dc600efcf74a62b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_9e327ddd09686398" hs_bindgen_9e327ddd09686398 :: + 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_9e327ddd09686398 + +{-| 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:2195: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_9e327ddd09686398 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_6_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_7469fb63ee07fe47" hs_bindgen_7469fb63ee07fe47 :: + 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:2213: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_7469fb63ee07fe47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_2c61933937d25204" hs_bindgen_2c61933937d25204 :: + 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:2234: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_2c61933937d25204 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_8837976d6786e3ff" hs_bindgen_8837976d6786e3ff :: + 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:2255: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_8837976d6786e3ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_f18a5538edb6b989" hs_bindgen_f18a5538edb6b989 :: + 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:2273:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_f18a5538edb6b989 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_e37afb99ff376ab4" hs_bindgen_e37afb99ff376ab4 :: + 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:2281: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_e37afb99ff376ab4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_5204888c6e3ff923" hs_bindgen_5204888c6e3ff923 :: + 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:2291: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_5204888c6e3ff923 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_553a667def5b0297" hs_bindgen_553a667def5b0297 :: + 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:2303: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_553a667def5b0297 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_fbbc2c47a36108c2" hs_bindgen_fbbc2c47a36108c2 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2310: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_fbbc2c47a36108c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_96c49dccba2c1a6b" hs_bindgen_96c49dccba2c1a6b :: + 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:2321: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_96c49dccba2c1a6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_fd0a16176ee74057" hs_bindgen_fd0a16176ee74057 :: + 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:2333: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_fd0a16176ee74057 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_d6f1c7f470c1dbe5" hs_bindgen_d6f1c7f470c1dbe5 :: + 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:2340: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_d6f1c7f470c1dbe5 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/Unsafe.hs new file mode 100644 index 00000000..51edfdfc --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_0/Unsafe.hs @@ -0,0 +1,13480 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_6_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_6_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_0a135379cdb370ad (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_1bd1f799e9b44f42 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_7a3e8a1db28c91c2 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_0466d94fa3d5e8c3 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_a8244d784059db35 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_2f98298fbd66f4d1 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_488bb55e6676432c (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_a99ccbd3dfed2974 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_a8712b49e6e503de (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_4cb06871731b8b22 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d22defb3778cd362 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_355fad8a1afeff20 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1ef57db5bdce335 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_32b113a6a0e4cce6 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0d60e4e6030dd0b3 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_62ae374280e1ccdb (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ae580fe84b2b73a7 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_494bf90119dae243 (" + , " 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_71e2a0919f6b5667 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_52b69abb8aa8e74e (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a66ffdc3032efae1 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7dfd57743ae40a23 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e4c98448a16f09fa (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_84fc398214ae7b40 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a8f3d0281719022c (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1de8d6552273befe (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_70faf3dfde3c7977 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_809ef0c80b6e2a39 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_754c0aacf9b4cfd8 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1a7ef810d099928f (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2b8ee099c85b533 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_71720e467b3ffd5e (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fe1a18ae5ca27bb0 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_feaaf10a3c72c6a3 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_888981a6085603d3 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_148b90ea7f15bcb6 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fb367b9b43b250b7 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c4bfeece04f0cc11 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5bd12d8187dad5e1 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_077abe319a27a3ef (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_bb55e2fbc2aba9b3 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_94a05462a5a21e6b (" + , " 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_e3c75480a4728787 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c147d32206e242c6 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e677aa231df2c27a (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42523ac7fdbc0fa4 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_354f32eb5bccfe23 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b62ebc6d5bebb6dc (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7da0d543c21cc34b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_c1487467c826f48d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_c368e3159d3f48d5 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fe8b0271b8c3ce8e (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ccab0944f5d0d012 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5087a9c59ae21974 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bf4f3e9d6fb393cc (" + , " 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_82dd034424437a5c (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_21d36204db895cff (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_c7ca2037e59d9143 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_566aa3e7be0dce07 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_abb6162f13ee2295 (" + , " 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_8afc022b3a3194bf (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_256c87f068c30511 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b645fb23e44c0cee (" + , " 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_619f630122659f46 (" + , " 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_74c094d763135a54 (" + , " 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_f83ad5fd0ccdde4b (" + , " 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_8f16c9d6be856f3b (" + , " 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_5a55e0ca029b845b (" + , " 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_590d398be73bf9a9 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d61f9373a8b57c51 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0174eeeeb8483793 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_dcd7bf2a65f840c5 (" + , " 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_f8ba45b9baf21e45 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_f06b6613324d975e (" + , " 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_d300dc0b271903b9 (" + , " 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_bb9cc58341604532 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0d61cdc985257b1f (" + , " 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_97fdbbfc0909f157 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_5d865ba977d09366 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cf14fe41ba63c128 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92af8202c328e814 (" + , " 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_70b4ab3dee2188dd (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_509d4c61e43aad68 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ca356b810780411 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_23143a96af253689 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_97fb74b8d6494a8f (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6baea46fd9c7f3ae (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1cc1ad1c3fa7254 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f91747940acccd1f (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_651cb5c78746bc8c (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_66466ee3c194c63f (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d95b41ade9477a23 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_a758b7868d7578fd (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_3a3b8cfa03c3d8e3 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_0db72aa1d30257f8 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_a23e76c7346f0a28 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_a10490d41e81ad5a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_3fd69f84f534f022 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ed67e68afa1e6d4d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b7d9accba35e0d64 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_99158d93cfd7eaa7 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f9c11933243ac642 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2b20b14311b8b568 (" + , " 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_6ddea6a2b69f56f1 (" + , " 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_d43dc119c44ddcd2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05a7d75c37455212 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ddb64ceb0452f3ad (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2b33639daa3098e (" + , " 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_a6adc1a0302437b4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb8fad3b61853975 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_480d4f61bd51fea6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c9f7ea37166ca599 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5dd8acf2f06ec855 (" + , " 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_d2b10b15b29b0a66 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_29d4d56aa263e275 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1473ceca2d4f3fc9 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c4cfcfcdebfd132b (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_83f82bb89c8d6d2e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_96622af51c3b42ae (" + , " 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_1514f09816f37494 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b913076827ab5122 (" + , " 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_95909ad9db554eef (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f69a03845862f42 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_97680d8980ab1c3d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cdfeb1de3ed6424b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_664647dfd28ccc39 (" + , " 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_57f62423d67c291c (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c11cab78f28da833 (" + , " 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_cde023b4ae8185b4 (" + , " 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_4f46c663bd313824 (" + , " 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_64adf8824d486c98 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9186371195f97192 (" + , " 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_a58cbbf964fc95c6 (" + , " 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_d6d66e18cf015325 (" + , " 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_cf5920f06f7b3ddd (" + , " 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_ccaadfa2fe713274 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d719dc7988803ab (" + , " 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_0cf4c279b95b1385 (" + , " 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_889dad4d901743d7 (" + , " 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_d168ba19477ed2c8 (" + , " 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_92bb38c0c95ca0a1 (" + , " 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_28b1cb49c76eb9a4 (" + , " 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_05116ad11771196d (" + , " 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_9e313c3f6e4fd4c8 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f8a156dccee5a4a (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbb3b8dfdcf865cd (" + , " 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_245d0bf0950f1720 (" + , " 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_aea6dcc7a4465e71 (" + , " 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_cbcc1f813e935bde (" + , " 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_fabea16933f44574 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_43e121b43a57c0c1 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1ea73b5735592f64 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e52061d6dcf29f5b (" + , " 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_433567adda52a8b9 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ca97b9b8aa6b82ae (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6afdc7cf50c298ce (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3d743b178c26b268 (" + , " 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_f8dd89774c57c973 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cbba6d4c72e0288a (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a680301af5747c61 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92bc5f5fa62e755c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bfdbdea905fc90db (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5179c8d5769bec65 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4268312182bd99b (" + , " 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_1b33c9d58cf44aff (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9403f8666df2e228 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a1e72a889ce6b7fe (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_63ea966554fffbf3 (" + , " 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_1bb7d3cedb57d865 (" + , " 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_0428ebe41dc3199e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ec0ef2579fafd37 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0218985617e15831 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6852225ab12f21e2 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_86877bb4e3b849c9 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_86d643f739b4c4e8 (" + , " 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_dc0cfd1cfad9e7d1 (" + , " 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_aeb19e35750abcf5 (" + , " 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_c7a0bcb997f4204c (" + , " 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_ee0ead805d4e0184 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_07a0b8a3979d7007 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_26963ae98a8a0760 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_07aa6d6c44c56372 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a2e1e8974014dde7 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bfa94f90e611017e (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a68c624b2fb1b4d3 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6853570d123c72f9 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_10b9c904617ed152 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_121d2c316a9d1fb2 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6ef6a762dce26caa (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f3e0b0e9395ca30 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_881f207582e5e7e6 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_edcfc0efd2c53a7b (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c2423ef5021bf4a0 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_82b851533dbe6722 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f2c84c3d6fa3b03 (" + , " 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_62e6a9045a328de7 (" + , " 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_c11ec10432be8b59 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e611782efef4f6a0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ad5972a35597d845 (" + , " 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_ab6c0d03f20662d6 (" + , " 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_128b35f004664b91 (" + , " 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_fe5d9bb3cfaaff80 (" + , " 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_55b18b9d69b4f5f7 (" + , " 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_a7d7a5e5c248bd6e (" + , " 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_7c2ba65a70093923 (" + , " 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_7922392573c594a0 (" + , " 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_7e4947374378e92e (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_9c7d938cf20d4ba6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a7ecbddf28ab88f3 (" + , " 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_9bfe955550438fea (" + , " 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_d48ca0387e1b6cee (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_918804ae4e29f71e (" + , " 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_da5eddfb86e276d6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3ceb42c29b4fa29f (" + , " 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_4b8c840ccd07e82a (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4eaf2523c51fe325 (" + , " 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_fa48938041054bf5 (" + , " 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_21bf10c7375b7ec3 (" + , " 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_ab43bd71292f2106 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b60b56f22035dc7a (" + , " 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_853e51d69cb0cb6f (" + , " 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_eb5347dbdffff71d (" + , " 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_375a93ee8e51ed06 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_82dd2e3b56492cb2 (" + , " 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_771f6bce01139a76 (" + , " 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_5f935a144ca67d15 (" + , " 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_f84f85a503abd024 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_82f29faa30f73c88 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b05e1af30c64345 (" + , " 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_08427e8fc01ecea2 (" + , " 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_56d1a2653927cb16 (" + , " 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_eef0df863c91de8a (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9cafcf1d9a9d7b91 (" + , " 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_fdc44b98c1958644 (" + , " 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_7bd02ef3611b0314 (" + , " 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_13d32f7d03a9c3c1 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b60c00eb5cedd647 (" + , " 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_3f1da5563b6a3961 (" + , " 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_06feff169340eaf7 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2ba0df32878674b (" + , " 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_6ac3915917a17b2b (" + , " 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_e3245fba1c02fc1a (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a44676e79aad07fc (" + , " 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_a41e4fd2190ff0f3 (" + , " 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_45911060d6bc9d5c (" + , " 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_09859c9d9c763aeb (" + , " 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_9215d280cfb53761 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_aa72c0e9c18b67cc (" + , " 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_7c023d422a6adcd7 (" + , " 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_a6751c3a99820223 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5ab38841548a315 (" + , " 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_b49a9d34390f9d8c (" + , " 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_a5bbf3a7b54979b5 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd5ec3232146c505 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_90450c8fe85c61b8 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ebfca2b7fc3af628 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_349ace162d304823 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_49224c75fbf872fe (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bc6d2c4d99567bb4 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2fb4c1204c6daf75 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0aee325e3d92e9c5 (" + , " 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_b3e2177e177bd285 (" + , " 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_e63707a47c13b3ef (" + , " 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_ff3b5fcd5e65e9f0 (" + , " 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_1267a15cc2201e2b (" + , " 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_5fea3bd3b47b5865 (" + , " 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_0e61d3e80c8d6ec2 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_70d5ba0be5deaef0 (" + , " 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_d0fa79896dfff8c7 (" + , " 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_c22139d033a6540a (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47617d5df8e9bdc8 (" + , " 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_999c0d72e2b6bc12 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f58265668f848f90 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_173eb7a2f0f04184 (" + , " 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_5a8292e6627cd79a (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_630cca9eefd82f71 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_432115060dd69927 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bbb21ca7a28bbf83 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_35c65eba32d67877 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_27c8005337c19d66 (" + , " 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_e3dd001aea15a010 (" + , " 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_2a48914143405699 (" + , " 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_b0a5d038817efffe (" + , " 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_a0488da4b07052f6 (" + , " 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_cdf391157464a43a (" + , " 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_2c27ba078b96731a (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_69813ef5f8ea6126 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_da2b2ed75f92c83c (" + , " 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_640a500d38f12fd3 (" + , " 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_b44cd6bb15230c72 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b885ff055caa99ed (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54314ab411e7e086 (" + , " 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_7e733de291a2832c (" + , " 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_37ab8bde98862d18 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7ee25ee52c39b60f (" + , " 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_5ece574482c83458 (" + , " 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_d58de5a142b397d5 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_dce219a5066012ab (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3187de1a545b3f5d (" + , " 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_b7053c75ff156f0c (" + , " 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_5121abe50c845bd0 (" + , " 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_788c59a3d8ffaeb6 (" + , " 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_0a374ec348cf432c (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_434da705e65e0da5 (" + , " 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_1d1f4d58da0c3a11 (" + , " 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_e57f0883af4100b8 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_54750c5930b41e0e (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d065fcc5a0b767e8 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_55f0d2b60771b040 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f91091302c7d4cd9 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0a01d8d3a861b7ce (" + , " 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_a6622feb568b362f (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50e256d4c60a4f59 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_0a135379cdb370ad" hs_bindgen_0a135379cdb370ad :: + 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:170: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_0a135379cdb370ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_1bd1f799e9b44f42" hs_bindgen_1bd1f799e9b44f42 :: + 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:179: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_1bd1f799e9b44f42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_7a3e8a1db28c91c2" hs_bindgen_7a3e8a1db28c91c2 :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_7a3e8a1db28c91c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_0466d94fa3d5e8c3" hs_bindgen_0466d94fa3d5e8c3 :: + 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:192: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_0466d94fa3d5e8c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_a8244d784059db35" hs_bindgen_a8244d784059db35 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_a8244d784059db35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_2f98298fbd66f4d1" hs_bindgen_2f98298fbd66f4d1 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_2f98298fbd66f4d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_488bb55e6676432c" hs_bindgen_488bb55e6676432c :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_488bb55e6676432c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_a99ccbd3dfed2974" hs_bindgen_a99ccbd3dfed2974 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_a99ccbd3dfed2974 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_a8712b49e6e503de" hs_bindgen_a8712b49e6e503de :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_a8712b49e6e503de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_4cb06871731b8b22" hs_bindgen_4cb06871731b8b22 :: + 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:223: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_4cb06871731b8b22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_d22defb3778cd362" hs_bindgen_d22defb3778cd362 :: + 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:229: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_d22defb3778cd362 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_355fad8a1afeff20" hs_bindgen_355fad8a1afeff20 :: + 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:235: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_355fad8a1afeff20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_e1ef57db5bdce335" hs_bindgen_e1ef57db5bdce335 :: + 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:247: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_e1ef57db5bdce335 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_32b113a6a0e4cce6" hs_bindgen_32b113a6a0e4cce6 :: + 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:257: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_32b113a6a0e4cce6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_0d60e4e6030dd0b3" hs_bindgen_0d60e4e6030dd0b3 :: + 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:262:28@ + +__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_0d60e4e6030dd0b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_62ae374280e1ccdb" hs_bindgen_62ae374280e1ccdb :: + 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:267: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_62ae374280e1ccdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_ae580fe84b2b73a7" hs_bindgen_ae580fe84b2b73a7 :: + 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:284: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 "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_ae580fe84b2b73a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_494bf90119dae243" hs_bindgen_494bf90119dae243 :: + 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:296: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_494bf90119dae243 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_71e2a0919f6b5667" hs_bindgen_71e2a0919f6b5667 :: + 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:310: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_71e2a0919f6b5667 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_52b69abb8aa8e74e" hs_bindgen_52b69abb8aa8e74e :: + 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:318: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_52b69abb8aa8e74e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_a66ffdc3032efae1" hs_bindgen_a66ffdc3032efae1 :: + 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:328: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_a66ffdc3032efae1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_7dfd57743ae40a23" hs_bindgen_7dfd57743ae40a23 :: + 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:338: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_7dfd57743ae40a23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_e4c98448a16f09fa" hs_bindgen_e4c98448a16f09fa :: + 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:348: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_e4c98448a16f09fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_84fc398214ae7b40" hs_bindgen_84fc398214ae7b40 :: + 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:355: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_84fc398214ae7b40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_a8f3d0281719022c" hs_bindgen_a8f3d0281719022c :: + 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:369: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_a8f3d0281719022c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_1de8d6552273befe" hs_bindgen_1de8d6552273befe :: + 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:377: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_1de8d6552273befe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_70faf3dfde3c7977" hs_bindgen_70faf3dfde3c7977 :: + 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:385: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_70faf3dfde3c7977 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_809ef0c80b6e2a39" hs_bindgen_809ef0c80b6e2a39 :: + 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:393: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_809ef0c80b6e2a39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_754c0aacf9b4cfd8" hs_bindgen_754c0aacf9b4cfd8 :: + 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:402: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_754c0aacf9b4cfd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_1a7ef810d099928f" hs_bindgen_1a7ef810d099928f :: + 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:412: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_1a7ef810d099928f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_d2b8ee099c85b533" hs_bindgen_d2b8ee099c85b533 :: + 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:420: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_d2b8ee099c85b533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_71720e467b3ffd5e" hs_bindgen_71720e467b3ffd5e :: + 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:427: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_71720e467b3ffd5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_fe1a18ae5ca27bb0" hs_bindgen_fe1a18ae5ca27bb0 :: + 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:435: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_fe1a18ae5ca27bb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_feaaf10a3c72c6a3" hs_bindgen_feaaf10a3c72c6a3 :: + 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:450: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_feaaf10a3c72c6a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_888981a6085603d3" hs_bindgen_888981a6085603d3 :: + 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:458: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_888981a6085603d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_148b90ea7f15bcb6" hs_bindgen_148b90ea7f15bcb6 :: + 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:467: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_148b90ea7f15bcb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_fb367b9b43b250b7" hs_bindgen_fb367b9b43b250b7 :: + 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:476: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_fb367b9b43b250b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_c4bfeece04f0cc11" hs_bindgen_c4bfeece04f0cc11 :: + 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:485: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_c4bfeece04f0cc11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_5bd12d8187dad5e1" hs_bindgen_5bd12d8187dad5e1 :: + 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:495: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_5bd12d8187dad5e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_077abe319a27a3ef" hs_bindgen_077abe319a27a3ef :: + 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:503: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_077abe319a27a3ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_bb55e2fbc2aba9b3" hs_bindgen_bb55e2fbc2aba9b3 :: + 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:511: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_bb55e2fbc2aba9b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_94a05462a5a21e6b" hs_bindgen_94a05462a5a21e6b :: + 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:521: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_94a05462a5a21e6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_e3c75480a4728787" hs_bindgen_e3c75480a4728787 :: + 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:531: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_e3c75480a4728787 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_c147d32206e242c6" hs_bindgen_c147d32206e242c6 :: + 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:545: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_c147d32206e242c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_e677aa231df2c27a" hs_bindgen_e677aa231df2c27a :: + 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:550: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_e677aa231df2c27a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_42523ac7fdbc0fa4" hs_bindgen_42523ac7fdbc0fa4 :: + 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:555: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_42523ac7fdbc0fa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_354f32eb5bccfe23" hs_bindgen_354f32eb5bccfe23 :: + 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:560: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_354f32eb5bccfe23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_b62ebc6d5bebb6dc" hs_bindgen_b62ebc6d5bebb6dc :: + 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:565: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_b62ebc6d5bebb6dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_7da0d543c21cc34b" hs_bindgen_7da0d543c21cc34b :: + 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:570: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_7da0d543c21cc34b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_c1487467c826f48d" hs_bindgen_c1487467c826f48d :: + 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:577: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_c1487467c826f48d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_c368e3159d3f48d5" hs_bindgen_c368e3159d3f48d5 :: + 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:582: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_c368e3159d3f48d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_fe8b0271b8c3ce8e" hs_bindgen_fe8b0271b8c3ce8e :: + 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:588: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_fe8b0271b8c3ce8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_ccab0944f5d0d012" hs_bindgen_ccab0944f5d0d012 :: + 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:594: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_ccab0944f5d0d012 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_5087a9c59ae21974" hs_bindgen_5087a9c59ae21974 :: + 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:600:5@ + +__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_5087a9c59ae21974 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_bf4f3e9d6fb393cc" hs_bindgen_bf4f3e9d6fb393cc :: + 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:606:5@ + +__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_bf4f3e9d6fb393cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_82dd034424437a5c" hs_bindgen_82dd034424437a5c :: + 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:611: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_82dd034424437a5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_21d36204db895cff" hs_bindgen_21d36204db895cff :: + 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:621:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_21d36204db895cff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_c7ca2037e59d9143" hs_bindgen_c7ca2037e59d9143 :: + 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:626: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_c7ca2037e59d9143 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_566aa3e7be0dce07" hs_bindgen_566aa3e7be0dce07 :: + 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:631: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_566aa3e7be0dce07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_abb6162f13ee2295" hs_bindgen_abb6162f13ee2295 :: + 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_abb6162f13ee2295 + +{-| + + 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:658: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_abb6162f13ee2295 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_8afc022b3a3194bf" hs_bindgen_8afc022b3a3194bf :: + 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:670:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_8afc022b3a3194bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_256c87f068c30511" hs_bindgen_256c87f068c30511 :: + 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:676:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_256c87f068c30511 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_b645fb23e44c0cee" hs_bindgen_b645fb23e44c0cee :: + 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_b645fb23e44c0cee + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:695: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_b645fb23e44c0cee x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_619f630122659f46" hs_bindgen_619f630122659f46 :: + 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_619f630122659f46 + +{-| 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:728: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_619f630122659f46 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_74c094d763135a54" hs_bindgen_74c094d763135a54 :: + 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_74c094d763135a54 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:752: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_74c094d763135a54 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_f83ad5fd0ccdde4b" hs_bindgen_f83ad5fd0ccdde4b :: + 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_f83ad5fd0ccdde4b + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:779: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_f83ad5fd0ccdde4b x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_8f16c9d6be856f3b" hs_bindgen_8f16c9d6be856f3b :: + 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_8f16c9d6be856f3b + +{-| 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:798: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_8f16c9d6be856f3b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_5a55e0ca029b845b" hs_bindgen_5a55e0ca029b845b :: + 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_5a55e0ca029b845b + +{-| 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:821: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_5a55e0ca029b845b 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_6_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_590d398be73bf9a9" hs_bindgen_590d398be73bf9a9 :: + 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:839: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_590d398be73bf9a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_d61f9373a8b57c51" hs_bindgen_d61f9373a8b57c51 :: + 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:845: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_d61f9373a8b57c51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_0174eeeeb8483793" hs_bindgen_0174eeeeb8483793 :: + 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:851: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_0174eeeeb8483793 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_dcd7bf2a65f840c5" hs_bindgen_dcd7bf2a65f840c5 :: + 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_dcd7bf2a65f840c5 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:856: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_dcd7bf2a65f840c5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_f8ba45b9baf21e45" hs_bindgen_f8ba45b9baf21e45 :: + 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:862: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_f8ba45b9baf21e45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_f06b6613324d975e" hs_bindgen_f06b6613324d975e :: + 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_f06b6613324d975e + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:868: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_f06b6613324d975e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_d300dc0b271903b9" hs_bindgen_d300dc0b271903b9 :: + 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_d300dc0b271903b9 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:874: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_d300dc0b271903b9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_bb9cc58341604532" hs_bindgen_bb9cc58341604532 :: + 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:882: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_bb9cc58341604532 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_0d61cdc985257b1f" hs_bindgen_0d61cdc985257b1f :: + 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:892: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_0d61cdc985257b1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_97fdbbfc0909f157" hs_bindgen_97fdbbfc0909f157 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:905: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_97fdbbfc0909f157 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_5d865ba977d09366" hs_bindgen_5d865ba977d09366 :: + 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:911:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_5d865ba977d09366 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_cf14fe41ba63c128" hs_bindgen_cf14fe41ba63c128 :: + 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:916: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_cf14fe41ba63c128 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_92af8202c328e814" hs_bindgen_92af8202c328e814 :: + 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:921:28@ + +__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_92af8202c328e814 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_70b4ab3dee2188dd" hs_bindgen_70b4ab3dee2188dd :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_70b4ab3dee2188dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_509d4c61e43aad68" hs_bindgen_509d4c61e43aad68 :: + 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:931: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_509d4c61e43aad68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_0ca356b810780411" hs_bindgen_0ca356b810780411 :: + 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:936: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_0ca356b810780411 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_23143a96af253689" hs_bindgen_23143a96af253689 :: + 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:941: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_23143a96af253689 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_97fb74b8d6494a8f" hs_bindgen_97fb74b8d6494a8f :: + 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:947: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_97fb74b8d6494a8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_6baea46fd9c7f3ae" hs_bindgen_6baea46fd9c7f3ae :: + 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:952: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_6baea46fd9c7f3ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_e1cc1ad1c3fa7254" hs_bindgen_e1cc1ad1c3fa7254 :: + 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:957: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_e1cc1ad1c3fa7254 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_f91747940acccd1f" hs_bindgen_f91747940acccd1f :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:962: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_f91747940acccd1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_651cb5c78746bc8c" hs_bindgen_651cb5c78746bc8c :: + 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_651cb5c78746bc8c + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:967: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_651cb5c78746bc8c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_66466ee3c194c63f" hs_bindgen_66466ee3c194c63f :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:972: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_66466ee3c194c63f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_d95b41ade9477a23" hs_bindgen_d95b41ade9477a23 :: + 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:979: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_d95b41ade9477a23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_a758b7868d7578fd" hs_bindgen_a758b7868d7578fd :: + 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:984: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_a758b7868d7578fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_3a3b8cfa03c3d8e3" hs_bindgen_3a3b8cfa03c3d8e3 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:986: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_3a3b8cfa03c3d8e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_0db72aa1d30257f8" hs_bindgen_0db72aa1d30257f8 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:988: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_0db72aa1d30257f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_a23e76c7346f0a28" hs_bindgen_a23e76c7346f0a28 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:990: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_a23e76c7346f0a28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_a10490d41e81ad5a" hs_bindgen_a10490d41e81ad5a :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:991: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_a10490d41e81ad5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_3fd69f84f534f022" hs_bindgen_3fd69f84f534f022 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:993: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_3fd69f84f534f022 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_ed67e68afa1e6d4d" hs_bindgen_ed67e68afa1e6d4d :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:994: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_ed67e68afa1e6d4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_b7d9accba35e0d64" hs_bindgen_b7d9accba35e0d64 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:996: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_b7d9accba35e0d64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_99158d93cfd7eaa7" hs_bindgen_99158d93cfd7eaa7 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:997: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_99158d93cfd7eaa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_f9c11933243ac642" hs_bindgen_f9c11933243ac642 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:998: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_f9c11933243ac642 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_2b20b14311b8b568" hs_bindgen_2b20b14311b8b568 :: + 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:1001: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_2b20b14311b8b568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_6ddea6a2b69f56f1" hs_bindgen_6ddea6a2b69f56f1 :: + 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:1004: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_6ddea6a2b69f56f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_d43dc119c44ddcd2" hs_bindgen_d43dc119c44ddcd2 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1011: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_d43dc119c44ddcd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_05a7d75c37455212" hs_bindgen_05a7d75c37455212 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1018: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_05a7d75c37455212 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_ddb64ceb0452f3ad" hs_bindgen_ddb64ceb0452f3ad :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1023: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_ddb64ceb0452f3ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_f2b33639daa3098e" hs_bindgen_f2b33639daa3098e :: + 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:1027: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_f2b33639daa3098e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_a6adc1a0302437b4" hs_bindgen_a6adc1a0302437b4 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1029: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_a6adc1a0302437b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_eb8fad3b61853975" hs_bindgen_eb8fad3b61853975 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1030: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_eb8fad3b61853975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_480d4f61bd51fea6" hs_bindgen_480d4f61bd51fea6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1032: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_480d4f61bd51fea6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_c9f7ea37166ca599" hs_bindgen_c9f7ea37166ca599 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1034: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_c9f7ea37166ca599 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_5dd8acf2f06ec855" hs_bindgen_5dd8acf2f06ec855 :: + 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:1037: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_5dd8acf2f06ec855 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_d2b10b15b29b0a66" hs_bindgen_d2b10b15b29b0a66 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1039: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_d2b10b15b29b0a66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_29d4d56aa263e275" hs_bindgen_29d4d56aa263e275 :: + 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:1046: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_29d4d56aa263e275 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_1473ceca2d4f3fc9" hs_bindgen_1473ceca2d4f3fc9 :: + 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:1053: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_1473ceca2d4f3fc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_c4cfcfcdebfd132b" hs_bindgen_c4cfcfcdebfd132b :: + 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:1058: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_c4cfcfcdebfd132b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_83f82bb89c8d6d2e" hs_bindgen_83f82bb89c8d6d2e :: + 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:1063: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_83f82bb89c8d6d2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_96622af51c3b42ae" hs_bindgen_96622af51c3b42ae :: + 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:1081: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_96622af51c3b42ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_1514f09816f37494" hs_bindgen_1514f09816f37494 :: + 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:1092: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_1514f09816f37494 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_b913076827ab5122" hs_bindgen_b913076827ab5122 :: + 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:1108: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_b913076827ab5122 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_95909ad9db554eef" hs_bindgen_95909ad9db554eef :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1112: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_95909ad9db554eef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_2f69a03845862f42" hs_bindgen_2f69a03845862f42 :: + 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:1115: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_2f69a03845862f42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_97680d8980ab1c3d" hs_bindgen_97680d8980ab1c3d :: + 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:1117: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_97680d8980ab1c3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_cdfeb1de3ed6424b" hs_bindgen_cdfeb1de3ed6424b :: + 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:1119: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_cdfeb1de3ed6424b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_664647dfd28ccc39" hs_bindgen_664647dfd28ccc39 :: + 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:1121: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_664647dfd28ccc39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_57f62423d67c291c" hs_bindgen_57f62423d67c291c :: + 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:1123: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_57f62423d67c291c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_c11cab78f28da833" hs_bindgen_c11cab78f28da833 :: + 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:1143: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_c11cab78f28da833 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_cde023b4ae8185b4" hs_bindgen_cde023b4ae8185b4 :: + 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:1165: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_cde023b4ae8185b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_4f46c663bd313824" hs_bindgen_4f46c663bd313824 :: + 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_4f46c663bd313824 + +{-| 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:1173: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_4f46c663bd313824 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_64adf8824d486c98" hs_bindgen_64adf8824d486c98 :: + 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:1178:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_64adf8824d486c98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_9186371195f97192" hs_bindgen_9186371195f97192 :: + 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:1191: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_9186371195f97192 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_a58cbbf964fc95c6" hs_bindgen_a58cbbf964fc95c6 :: + 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:1196: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_a58cbbf964fc95c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_d6d66e18cf015325" hs_bindgen_d6d66e18cf015325 :: + 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:1201: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_d6d66e18cf015325 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_cf5920f06f7b3ddd" hs_bindgen_cf5920f06f7b3ddd :: + 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:1206: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_cf5920f06f7b3ddd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_ccaadfa2fe713274" hs_bindgen_ccaadfa2fe713274 :: + 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:1208: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_ccaadfa2fe713274 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_6d719dc7988803ab" hs_bindgen_6d719dc7988803ab :: + 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:1215: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_6d719dc7988803ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_0cf4c279b95b1385" hs_bindgen_0cf4c279b95b1385 :: + 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:1230: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_0cf4c279b95b1385 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_889dad4d901743d7" hs_bindgen_889dad4d901743d7 :: + 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:1245: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_889dad4d901743d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_d168ba19477ed2c8" hs_bindgen_d168ba19477ed2c8 :: + 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:1262: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_d168ba19477ed2c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_92bb38c0c95ca0a1" hs_bindgen_92bb38c0c95ca0a1 :: + 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:1277: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_92bb38c0c95ca0a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_28b1cb49c76eb9a4" hs_bindgen_28b1cb49c76eb9a4 :: + 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:1293: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_28b1cb49c76eb9a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_05116ad11771196d" hs_bindgen_05116ad11771196d :: + 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:1308: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_05116ad11771196d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_9e313c3f6e4fd4c8" hs_bindgen_9e313c3f6e4fd4c8 :: + 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_9e313c3f6e4fd4c8 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1319: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_9e313c3f6e4fd4c8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_0f8a156dccee5a4a" hs_bindgen_0f8a156dccee5a4a :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1321: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_0f8a156dccee5a4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_fbb3b8dfdcf865cd" hs_bindgen_fbb3b8dfdcf865cd :: + 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:1323: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_fbb3b8dfdcf865cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_245d0bf0950f1720" hs_bindgen_245d0bf0950f1720 :: + 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:1328: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_245d0bf0950f1720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_aea6dcc7a4465e71" hs_bindgen_aea6dcc7a4465e71 :: + 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:1333: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_aea6dcc7a4465e71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_cbcc1f813e935bde" hs_bindgen_cbcc1f813e935bde :: + 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:1338: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_cbcc1f813e935bde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_fabea16933f44574" hs_bindgen_fabea16933f44574 :: + 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:1340: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_fabea16933f44574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_43e121b43a57c0c1" hs_bindgen_43e121b43a57c0c1 :: + 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:1345: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_43e121b43a57c0c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_1ea73b5735592f64" hs_bindgen_1ea73b5735592f64 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1347: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_1ea73b5735592f64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_e52061d6dcf29f5b" hs_bindgen_e52061d6dcf29f5b :: + 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:1350: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_e52061d6dcf29f5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_433567adda52a8b9" hs_bindgen_433567adda52a8b9 :: + 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:1355:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_433567adda52a8b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_ca97b9b8aa6b82ae" hs_bindgen_ca97b9b8aa6b82ae :: + 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:1360: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_ca97b9b8aa6b82ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_6afdc7cf50c298ce" hs_bindgen_6afdc7cf50c298ce :: + 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:1362: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_6afdc7cf50c298ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_3d743b178c26b268" hs_bindgen_3d743b178c26b268 :: + 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:1367: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_3d743b178c26b268 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_f8dd89774c57c973" hs_bindgen_f8dd89774c57c973 :: + 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_f8dd89774c57c973 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1369: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_f8dd89774c57c973 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_cbba6d4c72e0288a" hs_bindgen_cbba6d4c72e0288a :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1372: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_cbba6d4c72e0288a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_a680301af5747c61" hs_bindgen_a680301af5747c61 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1374: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_a680301af5747c61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_92bc5f5fa62e755c" hs_bindgen_92bc5f5fa62e755c :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1376: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_92bc5f5fa62e755c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_bfdbdea905fc90db" hs_bindgen_bfdbdea905fc90db :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1378: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_bfdbdea905fc90db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_5179c8d5769bec65" hs_bindgen_5179c8d5769bec65 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1380: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_5179c8d5769bec65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_d4268312182bd99b" hs_bindgen_d4268312182bd99b :: + 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:1383: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_d4268312182bd99b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_1b33c9d58cf44aff" hs_bindgen_1b33c9d58cf44aff :: + 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:1385: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_1b33c9d58cf44aff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_9403f8666df2e228" hs_bindgen_9403f8666df2e228 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1388: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_9403f8666df2e228 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_a1e72a889ce6b7fe" hs_bindgen_a1e72a889ce6b7fe :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1390: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_a1e72a889ce6b7fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_63ea966554fffbf3" hs_bindgen_63ea966554fffbf3 :: + 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:1396: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_63ea966554fffbf3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_1bb7d3cedb57d865" hs_bindgen_1bb7d3cedb57d865 :: + 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:1399: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_1bb7d3cedb57d865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_0428ebe41dc3199e" hs_bindgen_0428ebe41dc3199e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1402: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_0428ebe41dc3199e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_8ec0ef2579fafd37" hs_bindgen_8ec0ef2579fafd37 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1405: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_8ec0ef2579fafd37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_0218985617e15831" hs_bindgen_0218985617e15831 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1407: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_0218985617e15831 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_6852225ab12f21e2" hs_bindgen_6852225ab12f21e2 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1409: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_6852225ab12f21e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_86877bb4e3b849c9" hs_bindgen_86877bb4e3b849c9 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1411: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_86877bb4e3b849c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_86d643f739b4c4e8" hs_bindgen_86d643f739b4c4e8 :: + 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:1426: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_86d643f739b4c4e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_dc0cfd1cfad9e7d1" hs_bindgen_dc0cfd1cfad9e7d1 :: + 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:1440: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_dc0cfd1cfad9e7d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_aeb19e35750abcf5" hs_bindgen_aeb19e35750abcf5 :: + 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:1458: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_aeb19e35750abcf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_c7a0bcb997f4204c" hs_bindgen_c7a0bcb997f4204c :: + 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:1473: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_c7a0bcb997f4204c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_ee0ead805d4e0184" hs_bindgen_ee0ead805d4e0184 :: + 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_ee0ead805d4e0184 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1479: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_ee0ead805d4e0184 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_07a0b8a3979d7007" hs_bindgen_07a0b8a3979d7007 :: + 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_07a0b8a3979d7007 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_07a0b8a3979d7007 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_26963ae98a8a0760" hs_bindgen_26963ae98a8a0760 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1483: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_26963ae98a8a0760 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_07aa6d6c44c56372" hs_bindgen_07aa6d6c44c56372 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1485: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_07aa6d6c44c56372 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_a2e1e8974014dde7" hs_bindgen_a2e1e8974014dde7 :: + 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_a2e1e8974014dde7 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1491: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_a2e1e8974014dde7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_bfa94f90e611017e" hs_bindgen_bfa94f90e611017e :: + 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_bfa94f90e611017e + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_bfa94f90e611017e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_a68c624b2fb1b4d3" hs_bindgen_a68c624b2fb1b4d3 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1495: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_a68c624b2fb1b4d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_6853570d123c72f9" hs_bindgen_6853570d123c72f9 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1497: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_6853570d123c72f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_10b9c904617ed152" hs_bindgen_10b9c904617ed152 :: + 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_10b9c904617ed152 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1503: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_10b9c904617ed152 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_121d2c316a9d1fb2" hs_bindgen_121d2c316a9d1fb2 :: + 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_121d2c316a9d1fb2 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_121d2c316a9d1fb2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_6ef6a762dce26caa" hs_bindgen_6ef6a762dce26caa :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1507: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_6ef6a762dce26caa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_7f3e0b0e9395ca30" hs_bindgen_7f3e0b0e9395ca30 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1509: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_7f3e0b0e9395ca30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_881f207582e5e7e6" hs_bindgen_881f207582e5e7e6 :: + 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_881f207582e5e7e6 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1515: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_881f207582e5e7e6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_edcfc0efd2c53a7b" hs_bindgen_edcfc0efd2c53a7b :: + 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_edcfc0efd2c53a7b + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_edcfc0efd2c53a7b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_c2423ef5021bf4a0" hs_bindgen_c2423ef5021bf4a0 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1519: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_c2423ef5021bf4a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_82b851533dbe6722" hs_bindgen_82b851533dbe6722 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1521: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_82b851533dbe6722 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_5f2c84c3d6fa3b03" hs_bindgen_5f2c84c3d6fa3b03 :: + 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_5f2c84c3d6fa3b03 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1528: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_5f2c84c3d6fa3b03 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_62e6a9045a328de7" hs_bindgen_62e6a9045a328de7 :: + 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_62e6a9045a328de7 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1531: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_62e6a9045a328de7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_c11ec10432be8b59" hs_bindgen_c11ec10432be8b59 :: + 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_c11ec10432be8b59 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1537: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_c11ec10432be8b59 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_e611782efef4f6a0" hs_bindgen_e611782efef4f6a0 :: + 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_e611782efef4f6a0 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_e611782efef4f6a0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_ad5972a35597d845" hs_bindgen_ad5972a35597d845 :: + 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:1543: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_ad5972a35597d845 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_ab6c0d03f20662d6" hs_bindgen_ab6c0d03f20662d6 :: + 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:1547: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_ab6c0d03f20662d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_128b35f004664b91" hs_bindgen_128b35f004664b91 :: + 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_128b35f004664b91 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1554: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_128b35f004664b91 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_fe5d9bb3cfaaff80" hs_bindgen_fe5d9bb3cfaaff80 :: + 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_fe5d9bb3cfaaff80 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1557: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_fe5d9bb3cfaaff80 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_55b18b9d69b4f5f7" hs_bindgen_55b18b9d69b4f5f7 :: + 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_55b18b9d69b4f5f7 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1564: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_55b18b9d69b4f5f7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_a7d7a5e5c248bd6e" hs_bindgen_a7d7a5e5c248bd6e :: + 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_a7d7a5e5c248bd6e + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1567: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_a7d7a5e5c248bd6e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_7c2ba65a70093923" hs_bindgen_7c2ba65a70093923 :: + 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_7c2ba65a70093923 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1574: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_7c2ba65a70093923 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_7922392573c594a0" hs_bindgen_7922392573c594a0 :: + 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_7922392573c594a0 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1577: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_7922392573c594a0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_7e4947374378e92e" hs_bindgen_7e4947374378e92e :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1583: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_7e4947374378e92e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_9c7d938cf20d4ba6" hs_bindgen_9c7d938cf20d4ba6 :: + 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:1586: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_9c7d938cf20d4ba6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_a7ecbddf28ab88f3" hs_bindgen_a7ecbddf28ab88f3 :: + 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:1589: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_a7ecbddf28ab88f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_9bfe955550438fea" hs_bindgen_9bfe955550438fea :: + 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:1592: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_9bfe955550438fea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_d48ca0387e1b6cee" hs_bindgen_d48ca0387e1b6cee :: + 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:1595: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_d48ca0387e1b6cee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_918804ae4e29f71e" hs_bindgen_918804ae4e29f71e :: + 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:1598: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_918804ae4e29f71e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_da5eddfb86e276d6" hs_bindgen_da5eddfb86e276d6 :: + 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:1601: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_da5eddfb86e276d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_3ceb42c29b4fa29f" hs_bindgen_3ceb42c29b4fa29f :: + 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:1605: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_3ceb42c29b4fa29f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_4b8c840ccd07e82a" hs_bindgen_4b8c840ccd07e82a :: + 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:1609: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_4b8c840ccd07e82a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_4eaf2523c51fe325" hs_bindgen_4eaf2523c51fe325 :: + 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:1612: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_4eaf2523c51fe325 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_fa48938041054bf5" hs_bindgen_fa48938041054bf5 :: + 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:1619: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_fa48938041054bf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_21bf10c7375b7ec3" hs_bindgen_21bf10c7375b7ec3 :: + 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:1627: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_21bf10c7375b7ec3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ab43bd71292f2106" hs_bindgen_ab43bd71292f2106 :: + 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:1632: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_ab43bd71292f2106 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_b60b56f22035dc7a" hs_bindgen_b60b56f22035dc7a :: + 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:1635: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_b60b56f22035dc7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_853e51d69cb0cb6f" hs_bindgen_853e51d69cb0cb6f :: + 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_853e51d69cb0cb6f + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1638: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_853e51d69cb0cb6f x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_eb5347dbdffff71d" hs_bindgen_eb5347dbdffff71d :: + 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:1651: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_eb5347dbdffff71d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_375a93ee8e51ed06" hs_bindgen_375a93ee8e51ed06 :: + 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:1656: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_375a93ee8e51ed06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_82dd2e3b56492cb2" hs_bindgen_82dd2e3b56492cb2 :: + 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:1659: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_82dd2e3b56492cb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_771f6bce01139a76" hs_bindgen_771f6bce01139a76 :: + 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_771f6bce01139a76 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1662: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_771f6bce01139a76 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_5f935a144ca67d15" hs_bindgen_5f935a144ca67d15 :: + 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:1674: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_5f935a144ca67d15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_f84f85a503abd024" hs_bindgen_f84f85a503abd024 :: + 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:1679: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_f84f85a503abd024 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_82f29faa30f73c88" hs_bindgen_82f29faa30f73c88 :: + 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:1681: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_82f29faa30f73c88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_2b05e1af30c64345" hs_bindgen_2b05e1af30c64345 :: + 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_2b05e1af30c64345 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1683: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_2b05e1af30c64345 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_08427e8fc01ecea2" hs_bindgen_08427e8fc01ecea2 :: + 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:1686: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_08427e8fc01ecea2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_56d1a2653927cb16" hs_bindgen_56d1a2653927cb16 :: + 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:1694: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_56d1a2653927cb16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_eef0df863c91de8a" hs_bindgen_eef0df863c91de8a :: + 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:1702: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_eef0df863c91de8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_9cafcf1d9a9d7b91" hs_bindgen_9cafcf1d9a9d7b91 :: + 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_9cafcf1d9a9d7b91 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1704: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_9cafcf1d9a9d7b91 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_fdc44b98c1958644" hs_bindgen_fdc44b98c1958644 :: + 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_fdc44b98c1958644 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1705: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_fdc44b98c1958644 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_7bd02ef3611b0314" hs_bindgen_7bd02ef3611b0314 :: + 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:1713: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_7bd02ef3611b0314 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_13d32f7d03a9c3c1" hs_bindgen_13d32f7d03a9c3c1 :: + 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:1718: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_13d32f7d03a9c3c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_b60c00eb5cedd647" hs_bindgen_b60c00eb5cedd647 :: + 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:1720: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_b60c00eb5cedd647 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_3f1da5563b6a3961" hs_bindgen_3f1da5563b6a3961 :: + 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:1723: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_3f1da5563b6a3961 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_06feff169340eaf7" hs_bindgen_06feff169340eaf7 :: + 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:1725: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_06feff169340eaf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_f2ba0df32878674b" hs_bindgen_f2ba0df32878674b :: + 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_f2ba0df32878674b + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1728: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_f2ba0df32878674b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_6ac3915917a17b2b" hs_bindgen_6ac3915917a17b2b :: + 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:1742: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_6ac3915917a17b2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_e3245fba1c02fc1a" hs_bindgen_e3245fba1c02fc1a :: + 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:1747: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_e3245fba1c02fc1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_a44676e79aad07fc" hs_bindgen_a44676e79aad07fc :: + 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:1750: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_a44676e79aad07fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_a41e4fd2190ff0f3" hs_bindgen_a41e4fd2190ff0f3 :: + 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:1755: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_a41e4fd2190ff0f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_45911060d6bc9d5c" hs_bindgen_45911060d6bc9d5c :: + 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_45911060d6bc9d5c + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1759: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_45911060d6bc9d5c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_09859c9d9c763aeb" hs_bindgen_09859c9d9c763aeb :: + 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:1772: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_09859c9d9c763aeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_9215d280cfb53761" hs_bindgen_9215d280cfb53761 :: + 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:1777: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_9215d280cfb53761 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_aa72c0e9c18b67cc" hs_bindgen_aa72c0e9c18b67cc :: + 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:1780: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_aa72c0e9c18b67cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_7c023d422a6adcd7" hs_bindgen_7c023d422a6adcd7 :: + 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_7c023d422a6adcd7 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1785: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_7c023d422a6adcd7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_a6751c3a99820223" hs_bindgen_a6751c3a99820223 :: + 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:1798: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_a6751c3a99820223 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_f5ab38841548a315" hs_bindgen_f5ab38841548a315 :: + 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_f5ab38841548a315 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1805: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_f5ab38841548a315 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_b49a9d34390f9d8c" hs_bindgen_b49a9d34390f9d8c :: + 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_b49a9d34390f9d8c + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1820: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_b49a9d34390f9d8c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_a5bbf3a7b54979b5" hs_bindgen_a5bbf3a7b54979b5 :: + 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_a5bbf3a7b54979b5 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1835: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_a5bbf3a7b54979b5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_dd5ec3232146c505" hs_bindgen_dd5ec3232146c505 :: + 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:1836: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_dd5ec3232146c505 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_90450c8fe85c61b8" hs_bindgen_90450c8fe85c61b8 :: + 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:1841: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_90450c8fe85c61b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_ebfca2b7fc3af628" hs_bindgen_ebfca2b7fc3af628 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1843: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_ebfca2b7fc3af628 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_349ace162d304823" hs_bindgen_349ace162d304823 :: + 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:1846: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_349ace162d304823 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_49224c75fbf872fe" hs_bindgen_49224c75fbf872fe :: + 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:1847: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_49224c75fbf872fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_bc6d2c4d99567bb4" hs_bindgen_bc6d2c4d99567bb4 :: + 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:1849: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_bc6d2c4d99567bb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_2fb4c1204c6daf75" hs_bindgen_2fb4c1204c6daf75 :: + 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:1850: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_2fb4c1204c6daf75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_0aee325e3d92e9c5" hs_bindgen_0aee325e3d92e9c5 :: + 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:1853: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_0aee325e3d92e9c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_b3e2177e177bd285" hs_bindgen_b3e2177e177bd285 :: + 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:1855: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_b3e2177e177bd285 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_e63707a47c13b3ef" hs_bindgen_e63707a47c13b3ef :: + 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:1856: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_e63707a47c13b3ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_ff3b5fcd5e65e9f0" hs_bindgen_ff3b5fcd5e65e9f0 :: + 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:1857: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_ff3b5fcd5e65e9f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_1267a15cc2201e2b" hs_bindgen_1267a15cc2201e2b :: + 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:1859: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_1267a15cc2201e2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_5fea3bd3b47b5865" hs_bindgen_5fea3bd3b47b5865 :: + 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:1862: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_5fea3bd3b47b5865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_0e61d3e80c8d6ec2" hs_bindgen_0e61d3e80c8d6ec2 :: + 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:1864: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_0e61d3e80c8d6ec2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_70d5ba0be5deaef0" hs_bindgen_70d5ba0be5deaef0 :: + 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:1867: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_70d5ba0be5deaef0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_d0fa79896dfff8c7" hs_bindgen_d0fa79896dfff8c7 :: + 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:1871: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_d0fa79896dfff8c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_c22139d033a6540a" hs_bindgen_c22139d033a6540a :: + 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:1874: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_c22139d033a6540a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_47617d5df8e9bdc8" hs_bindgen_47617d5df8e9bdc8 :: + 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:1877: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_47617d5df8e9bdc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_999c0d72e2b6bc12" hs_bindgen_999c0d72e2b6bc12 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1893: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_999c0d72e2b6bc12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_f58265668f848f90" hs_bindgen_f58265668f848f90 :: + 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:1899: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_f58265668f848f90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_173eb7a2f0f04184" hs_bindgen_173eb7a2f0f04184 :: + 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:1910: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_173eb7a2f0f04184 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_5a8292e6627cd79a" hs_bindgen_5a8292e6627cd79a :: + 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:1925: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_5a8292e6627cd79a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_630cca9eefd82f71" hs_bindgen_630cca9eefd82f71 :: + 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:1933: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_630cca9eefd82f71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_432115060dd69927" hs_bindgen_432115060dd69927 :: + 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_432115060dd69927 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1935: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_432115060dd69927 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_bbb21ca7a28bbf83" hs_bindgen_bbb21ca7a28bbf83 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1937: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_bbb21ca7a28bbf83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_35c65eba32d67877" hs_bindgen_35c65eba32d67877 :: + 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:1943: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_35c65eba32d67877 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_27c8005337c19d66" hs_bindgen_27c8005337c19d66 :: + 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:1950: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_27c8005337c19d66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_e3dd001aea15a010" hs_bindgen_e3dd001aea15a010 :: + 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_e3dd001aea15a010 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1968: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_e3dd001aea15a010 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_2a48914143405699" hs_bindgen_2a48914143405699 :: + 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_2a48914143405699 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1977: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_2a48914143405699 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_b0a5d038817efffe" hs_bindgen_b0a5d038817efffe :: + 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_b0a5d038817efffe + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1985: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_b0a5d038817efffe x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_a0488da4b07052f6" hs_bindgen_a0488da4b07052f6 :: + 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_a0488da4b07052f6 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1995: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_a0488da4b07052f6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_cdf391157464a43a" hs_bindgen_cdf391157464a43a :: + 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_cdf391157464a43a + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2014: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_cdf391157464a43a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_2c27ba078b96731a" hs_bindgen_2c27ba078b96731a :: + 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:2021:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_2c27ba078b96731a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_69813ef5f8ea6126" hs_bindgen_69813ef5f8ea6126 :: + 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:2027: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_69813ef5f8ea6126 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_da2b2ed75f92c83c" hs_bindgen_da2b2ed75f92c83c :: + 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:2033: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_da2b2ed75f92c83c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_640a500d38f12fd3" hs_bindgen_640a500d38f12fd3 :: + 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_640a500d38f12fd3 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2046: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_640a500d38f12fd3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_b44cd6bb15230c72" hs_bindgen_b44cd6bb15230c72 :: + 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:2054:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_b44cd6bb15230c72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_b885ff055caa99ed" hs_bindgen_b885ff055caa99ed :: + 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:2063: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_b885ff055caa99ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_54314ab411e7e086" hs_bindgen_54314ab411e7e086 :: + 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:2074: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_54314ab411e7e086 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_7e733de291a2832c" hs_bindgen_7e733de291a2832c :: + 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_7e733de291a2832c + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2085: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_7e733de291a2832c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_37ab8bde98862d18" hs_bindgen_37ab8bde98862d18 :: + 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:2092:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_37ab8bde98862d18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_7ee25ee52c39b60f" hs_bindgen_7ee25ee52c39b60f :: + 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_7ee25ee52c39b60f + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2095: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_7ee25ee52c39b60f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_5ece574482c83458" hs_bindgen_5ece574482c83458 :: + 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_5ece574482c83458 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2098: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_5ece574482c83458 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_d58de5a142b397d5" hs_bindgen_d58de5a142b397d5 :: + 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:2110: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_d58de5a142b397d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_dce219a5066012ab" hs_bindgen_dce219a5066012ab :: + 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:2118: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_dce219a5066012ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_3187de1a545b3f5d" hs_bindgen_3187de1a545b3f5d :: + 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_3187de1a545b3f5d + +{-| 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:2133: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_3187de1a545b3f5d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_b7053c75ff156f0c" hs_bindgen_b7053c75ff156f0c :: + 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_b7053c75ff156f0c + +{-| 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:2152: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_b7053c75ff156f0c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_5121abe50c845bd0" hs_bindgen_5121abe50c845bd0 :: + 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_5121abe50c845bd0 + +{-| 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:2168: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_5121abe50c845bd0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_788c59a3d8ffaeb6" hs_bindgen_788c59a3d8ffaeb6 :: + 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_788c59a3d8ffaeb6 + +{-| 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:2195: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_788c59a3d8ffaeb6 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_6_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_0a374ec348cf432c" hs_bindgen_0a374ec348cf432c :: + 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:2213: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_0a374ec348cf432c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_434da705e65e0da5" hs_bindgen_434da705e65e0da5 :: + 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:2234: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_434da705e65e0da5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_1d1f4d58da0c3a11" hs_bindgen_1d1f4d58da0c3a11 :: + 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:2255: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_1d1f4d58da0c3a11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_e57f0883af4100b8" hs_bindgen_e57f0883af4100b8 :: + 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:2273:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_e57f0883af4100b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_54750c5930b41e0e" hs_bindgen_54750c5930b41e0e :: + 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:2281: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_54750c5930b41e0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_d065fcc5a0b767e8" hs_bindgen_d065fcc5a0b767e8 :: + 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:2291: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_d065fcc5a0b767e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_55f0d2b60771b040" hs_bindgen_55f0d2b60771b040 :: + 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:2303: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_55f0d2b60771b040 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_f91091302c7d4cd9" hs_bindgen_f91091302c7d4cd9 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2310: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_f91091302c7d4cd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_0a01d8d3a861b7ce" hs_bindgen_0a01d8d3a861b7ce :: + 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:2321: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_0a01d8d3a861b7ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_a6622feb568b362f" hs_bindgen_a6622feb568b362f :: + 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:2333: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_a6622feb568b362f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_0_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_50e256d4c60a4f59" hs_bindgen_50e256d4c60a4f59 :: + 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:2340: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_50e256d4c60a4f59 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1.hs new file mode 100644 index 00000000..82b2110f --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1.hs @@ -0,0 +1,1584 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_6_1 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:71:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20240408 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:113: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 + +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") + , (-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:114: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:115: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:117: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:118: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:120: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:121: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:123: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:124: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:125: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:126: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:128: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:129: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:130: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:131: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:132: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:133: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:135: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:136: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:138: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:139: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:140: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:141: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:143: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:146: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' + +__defined at:__ @botan\/ffi.h:155:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:155: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:164:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:164: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:237:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:272:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:272: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:360:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:360: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:440:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:440: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:536:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:536: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:538: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:539: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:540: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:633: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:834:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:834: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:900:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:900: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1097:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1097: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:1110: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:1180: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:1181: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:1182:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1317:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1317: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1624:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1624: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1648:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1648: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:1669:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1671:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1671: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1691:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1691: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1710:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1710: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1739: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:1739: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1769: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:1769: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1833:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1833: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1880: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 + +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:1881: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:1882: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:1883: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:1884: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:1885: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:1886: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:1887: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:1888: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:1889: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:1890: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1931:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1931: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2008:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2008: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2040:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2040: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2080:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2080: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:2082: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2103: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:2103: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2261:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2261: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2266:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2266: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 + +-- | __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_6_1/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/FunPtr.hs new file mode 100644 index 00000000..7a2fcea9 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/FunPtr.hs @@ -0,0 +1,9110 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_6_1.FunPtr where + +import Botan.Bindings.Generated.Botan_3_6_1 +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_6_1_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_8c3f814306d1d88a (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_ed615e6919f23a1d (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_573298535fc8b36d (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95ba79425cb4bed7 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_2a1a38188328b4bc (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_7196af714abbf2ae (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_15bd3dd3bcb577ed (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_932817a9cbced237 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_48844cf8b915d587 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1c9bdc6b9db52e5 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9084bfef05fdc4f (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a8d7ecc418ca5d6 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a2c8d29471b3b92 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dcc6781220b6b86b (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c0b2417f5274119 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d6ad80ba5aeeeaf (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_817909814c8cf8a7 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f31da82a5b60736a (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_6_1_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc3fa9e5db76aec3 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a93d53340a256d9 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31685f6aa23a0280 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30ce4060f717aefe (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff3a52ec991b9565 (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6427675eb8422e11 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b278f677f92eb11a (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18c7f48bc9b775bd (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f05e982fec5da071 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ac959f6d983bde17 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3d24d27361e5ea0 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_99c4e4a2832905c6 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd520abebe563c15 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_60bd5648469663e8 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32995fedb0c40d1e (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6861276ef70bc73 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c73e65bbae7a1cb (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce05b2eb92888345 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ce0642d616b0ce1 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2730d92a553ba7a2 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20802e5d5aa1a2a7 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ed56887eed439db (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42bb02a4e72741a2 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b02d1e0b21a29ef2 (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_6_1_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d229fb3091c2cff (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_069e58a88086498c (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c55bf77cc76d4424 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93ea84072b3e3539 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_325249692dacb2ba (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8de6da1cdf7f8265 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92dbeab30fd8304e (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8bbdf02852edb6b5 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_07b90815d0d65c59 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e483dbdbf8ea6cc (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2284dc3904684369 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57e6f7673fd6fcfb (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_015977ba67ac150f (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_6_1_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_091111935ba04052 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a83b50fab28659e (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08f71a25af2f8e30 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_370232be1ea8f790 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f35f75dc0f0ce6a1 (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_6_1_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e430c70ccbbdc7f (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d22511ca63166856 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35d1f50a31f656d2 (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_6_1_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_901b6a4ce6e4e81b (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_6_1_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_078bdd1105f015c5 (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_6_1_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3849e13ebf744504 (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_6_1_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2e70fbf116cf558 (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_6_1_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f89c7c1aed9c371d (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_6_1_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26a14a29c88717c7 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bb035634edf1265 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2c073fa791a6bb0 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33ec4cd975248e54 (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_6_1_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6044924f6e235c2 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4a5c82387a7013c (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_6_1_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b00cb82f17fa2ad9 (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_6_1_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fafd63986248f73b (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26f3b582f79e52c2 (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_6_1_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0a95e02bda55cb8 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69942ddcdb83b5a2 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9be90fa9ba8e2fac (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a71661b6545c219 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d9e18dd4feab758 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7a5d2850b36fda5 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47d7b43671cfdcfe (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c923ecb1ab706137 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec587e9958bc9917 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd5345b782948883 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66f1ea1b581200d9 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f0bffdf923647a9 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be58d3c6e6534e08 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf72928073ab1388 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06a1226570a5fef3 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0640fe25ea3f91e3 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e71e8842d581c4e8 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6fd77359933e0ed (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ed08dad56f9136d (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5e1468f78bcd8d5 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2230a4bae91a7f2f (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1d3c18dda6919f7 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e3d0519f6f9c5f3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00a40c06b8088c94 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_772371555cd2f797 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1ed8ad8af692c28 (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_6_1_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a7e4a6bed7fe19a (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_6_1_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d4bdd17fcee2b97 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe3ae322acd0dda0 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6f54598df37a376 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc912047063f69a7 (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_6_1_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31def3e484fd791d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9bd8fb4c84c565b9 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d8df8be40f34cbd (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3eb0f6608347f160 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a7c088c222a3180 (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_6_1_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b29cf908fc2337ea (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7fb0dd832550e36f (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fee01faa7f1e4b19 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8857031f2c12ae35 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db479cd7808676ac (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12ff0e86847b86ea (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_6_1_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7fc46da2c66f6992 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd697512f44ac807 (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_6_1_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22daee6f3ce0de70 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb4f59d860dd3c84 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cae107e7d73f5adf (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20fe36ca519e8fe5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1f9556177e5304ef (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_6_1_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd6891f9e3f77f93 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1521780b100f7208 (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_6_1_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c2191e2d3a4f1469 (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_6_1_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7e954dbbfe50f15 (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_6_1_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77331a7fd35e714f (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27487309d82a5d5b (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2aee7c7db0c03a37 (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_6_1_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2545d80b5a9c58ee (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_6_1_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74061b69eb243f8d (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_6_1_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b0bc5fb530d2c27 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97f81eb7e21b23c4 (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_6_1_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53e107b9a471530e (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_6_1_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fceef958bd3da3de (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_6_1_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4cc052152b29160 (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_6_1_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb8002da3945eb5a (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_6_1_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0268665918d1be42 (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_6_1_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19ac2bc05bce0d94 (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_6_1_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ded02482f425c923 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_498c69e4c66e0e8b (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_afa215a5486cae8a (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c129aa0948080560 (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_6_1_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5f54c1516cf07e3 (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_6_1_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95a0fb27c76a2c42 (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_6_1_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b60c9c2fc7f2a070 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0f8e6be6a49f6a5 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6dd6f921b74351e6 (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2b9d2e2adbf773a3 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37cb841a9ee5402b (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a85bf46ce033c7a (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8ddcc8667b51680 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef866f791a6bfa03 (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_6_1_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_528dba7413115ec0 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_61bccf8d68ebda36 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c3297e809906533 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae824f4e853e4b24 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6f86930bd617a43 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef51f341e11bfde8 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87dfd9ee22290a91 (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_6_1_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c60e9459f7ef1993 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26993d4b68bb31c9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fbd9250e5e20378 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6885b7fcb9207ee4 (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_6_1_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4d6fc4745a32963 (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_6_1_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4fc98bc8a7be914b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b8c91dbc8038adc (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53ff68bfd292c09d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6857716fa2ac6d3 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_440fff2a5b8f20ca (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d0b92d2954b9c6a (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_6_1_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5627f492b2636a0 (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_6_1_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05b5fd1809bb1c99 (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_6_1_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d7097885250f94a (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_6_1_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f0073bf8a20b3c04 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b84e6c5893429bb2 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5321635ce593bb33 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c39deab892706e5 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54d467702dd3e7e5 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28267fdc2fe956f9 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_868362d3179952b3 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c914dfc788f1b30a (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11df2ef4a6a4c900 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fc63c1f17070a78 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ac60c4034ff4a9b (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb4a2b5871b4d432 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a501589fe6f674f (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3af09c7489db1546 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e59c9b0256f62ddc (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee4c047fbffadedc (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1a4a95b78bd59ec (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_6_1_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_761ed82c58fccdcb (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_6_1_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_516ab8be7f52c63c (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34cf7aba331143e2 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_63c1ff40fff6526a (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_6_1_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6445f8a3c770ed28 (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_6_1_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a73b6433eeaf5625 (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_6_1_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f30ec397e41b065 (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_6_1_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e5aa15c060c24f1 (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_6_1_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3eeff79fb6fda263 (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_6_1_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28846d4ed28d832f (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_6_1_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e357db26f6033cf (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_6_1_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96a2a9d46d6bdd50 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a96719b53254779 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5843bc8459ccaf6f (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_6_1_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55661591dd30661a (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_6_1_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_735876f98c5f7ad5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e63fcd69bd386b6e (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_6_1_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4df4159b2eb6622 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b71837379013ce95 (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_6_1_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_525e60d8a7dc3ea0 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4506e7fbba947afb (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_6_1_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c3b986f2910d856 (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_6_1_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a886dd2053f60a0 (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_6_1_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c7c28262c06c60a (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1944ce304af90db4 (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_6_1_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5321e2d51cd9ea5 (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_6_1_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d8015eac96ec717 (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_6_1_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6038ff62b267efe8 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cdeb5fccb7ceb2f7 (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_6_1_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_60436ca48703f519 (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_6_1_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3addc25c8877eefe (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_6_1_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9d91a031905a85f (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c604fec3832ecd5 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c76c885c3e284a0c (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_6_1_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93c91612d8334c38 (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_6_1_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_482e85ab70d9e311 (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_6_1_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4afd105014a6888e (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_567a2462e50330ba (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_6_1_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4224ab9d5f32de02 (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_6_1_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f713eccf956b799 (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_6_1_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38da18f6450e83ee (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_484c8573a9963dc7 (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_6_1_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6760e6869c66b46c (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_6_1_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad35d74a3563785a (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_517360443f70a30d (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_6_1_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a18a5ef2f87fb0ab (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_6_1_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a18a1316c9999dc2 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e217270efb266ea4 (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_6_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_497a4fa0405f3151 (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_6_1_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_074f306ed15791a4 (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_6_1_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea64bf8385b02d6f (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_6_1_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9c610790eb61c26 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f061b2894ff1b304 (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_6_1_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0bcda5a963b8a6b (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_6_1_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc982daa49ce28cd (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_07dc0e4314b86a5f (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_6_1_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad5b235649de798e (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_6_1_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1872493c033ba79c (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6b15323b1809169 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_923c0fc1812c6aa5 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7be7234c35daa3f9 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee0e5e59f2aa344f (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b237394ef8de5af (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b31c6d2828f6d11 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0b53753c76ae2802 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4df40676d4b0dff8 (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_6_1_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ed513e460099daa2 (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_6_1_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fcc199fa24b1df48 (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_6_1_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d243434c0c30f86 (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_6_1_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0f631730618dd79 (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_6_1_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30e396f0b6412d77 (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_6_1_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_17253fd1d4eb7aa4 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c83fa403c708247b (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_6_1_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_561d7bb8bcaa5e09 (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_6_1_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8e76d7c023e7cb6 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_edaff6c778144da8 (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_6_1_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6219b237aa91bf7 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d235e13732dd47d (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea656f82069b0d09 (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_6_1_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_06f47bed329d0770 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efb3821e2a889e0d (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28be82ce4f57aa7c (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eefdea3f2290c792 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84b5425c1d19ace6 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97469982d20a9e84 (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_6_1_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0eb61edcde026867 (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_6_1_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d8d7647179cf32d (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_6_1_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_837695b850056a2e (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_6_1_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8cec10e510aab98e (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_6_1_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fc068e86ad57d4d (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_6_1_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71941955e458c4bb (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01ae913f0f79d5e4 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_032a7fcae48bfae4 (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_6_1_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b957b68d1062d69c (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_6_1_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92f2bca00cd418ef (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9256602e7505afc8 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a26d9bb2083cf584 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8d6e6ddde657dcb (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_6_1_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_867ad4181097501a (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abcea253e1fca3e2 (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_6_1_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a171b9c0d7727518 (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_6_1_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aef278f8b72b777f (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d73a98cc7c8dcd88 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9deb7c91eef2a97c (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_6_1_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c06e53b0474f218 (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_6_1_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db97047d28f01c51 (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_6_1_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bcdc5738160a1d4 (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_6_1_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2971bc1b264aeb6 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2be771a342fdcd0 (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_6_1_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1e8148e93b18e1f (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_6_1_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca8489c6ba03eacc (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c81d879562be956b (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19e16152a564dd81 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1171feaba5710b44 (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0fe5e55c8660a17 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2379a5784b8957f7 (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_6_1_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1b7791209ca25bb (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9df76f8831d268c (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_8c3f814306d1d88a" hs_bindgen_8c3f814306d1d88a :: + 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:170: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_8c3f814306d1d88a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_ed615e6919f23a1d" hs_bindgen_ed615e6919f23a1d :: + 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:179: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_ed615e6919f23a1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_573298535fc8b36d" hs_bindgen_573298535fc8b36d :: + 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:186: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_573298535fc8b36d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_95ba79425cb4bed7" hs_bindgen_95ba79425cb4bed7 :: + 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:192: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_95ba79425cb4bed7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_2a1a38188328b4bc" hs_bindgen_2a1a38188328b4bc :: + 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:197: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_2a1a38188328b4bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_7196af714abbf2ae" hs_bindgen_7196af714abbf2ae :: + 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:202: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_7196af714abbf2ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_15bd3dd3bcb577ed" hs_bindgen_15bd3dd3bcb577ed :: + 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:207: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_15bd3dd3bcb577ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_932817a9cbced237" hs_bindgen_932817a9cbced237 :: + 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:212: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_932817a9cbced237 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_48844cf8b915d587" hs_bindgen_48844cf8b915d587 :: + 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:218: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_48844cf8b915d587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_e1c9bdc6b9db52e5" hs_bindgen_e1c9bdc6b9db52e5 :: + 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:223: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_e1c9bdc6b9db52e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_b9084bfef05fdc4f" hs_bindgen_b9084bfef05fdc4f :: + 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:229: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_b9084bfef05fdc4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_0a8d7ecc418ca5d6" hs_bindgen_0a8d7ecc418ca5d6 :: + 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:235: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_0a8d7ecc418ca5d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_7a2c8d29471b3b92" hs_bindgen_7a2c8d29471b3b92 :: + 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:247: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_7a2c8d29471b3b92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_dcc6781220b6b86b" hs_bindgen_dcc6781220b6b86b :: + 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:257: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_dcc6781220b6b86b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_9c0b2417f5274119" hs_bindgen_9c0b2417f5274119 :: + 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:262: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_9c0b2417f5274119 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_8d6ad80ba5aeeeaf" hs_bindgen_8d6ad80ba5aeeeaf :: + 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:267: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_8d6ad80ba5aeeeaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_817909814c8cf8a7" hs_bindgen_817909814c8cf8a7 :: + 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:284: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_817909814c8cf8a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_f31da82a5b60736a" hs_bindgen_f31da82a5b60736a :: + 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:296: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_f31da82a5b60736a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_fc3fa9e5db76aec3" hs_bindgen_fc3fa9e5db76aec3 :: + 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:310: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_fc3fa9e5db76aec3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_9a93d53340a256d9" hs_bindgen_9a93d53340a256d9 :: + 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:318: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_9a93d53340a256d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_31685f6aa23a0280" hs_bindgen_31685f6aa23a0280 :: + 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:328: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_31685f6aa23a0280 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_30ce4060f717aefe" hs_bindgen_30ce4060f717aefe :: + 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:338: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_30ce4060f717aefe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_ff3a52ec991b9565" hs_bindgen_ff3a52ec991b9565 :: + 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:348: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_ff3a52ec991b9565 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_6427675eb8422e11" hs_bindgen_6427675eb8422e11 :: + 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:355: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_6427675eb8422e11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_b278f677f92eb11a" hs_bindgen_b278f677f92eb11a :: + 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:369: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_b278f677f92eb11a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_18c7f48bc9b775bd" hs_bindgen_18c7f48bc9b775bd :: + 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:377: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_18c7f48bc9b775bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_f05e982fec5da071" hs_bindgen_f05e982fec5da071 :: + 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:385: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_f05e982fec5da071 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_ac959f6d983bde17" hs_bindgen_ac959f6d983bde17 :: + 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:393: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_ac959f6d983bde17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_a3d24d27361e5ea0" hs_bindgen_a3d24d27361e5ea0 :: + 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:402: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_a3d24d27361e5ea0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_99c4e4a2832905c6" hs_bindgen_99c4e4a2832905c6 :: + 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:412: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_99c4e4a2832905c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_bd520abebe563c15" hs_bindgen_bd520abebe563c15 :: + 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:420: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_bd520abebe563c15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_60bd5648469663e8" hs_bindgen_60bd5648469663e8 :: + 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:427: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_60bd5648469663e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_32995fedb0c40d1e" hs_bindgen_32995fedb0c40d1e :: + 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:435: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_32995fedb0c40d1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_c6861276ef70bc73" hs_bindgen_c6861276ef70bc73 :: + 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:450: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_c6861276ef70bc73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_5c73e65bbae7a1cb" hs_bindgen_5c73e65bbae7a1cb :: + 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:458: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_5c73e65bbae7a1cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_ce05b2eb92888345" hs_bindgen_ce05b2eb92888345 :: + 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:467: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_ce05b2eb92888345 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_0ce0642d616b0ce1" hs_bindgen_0ce0642d616b0ce1 :: + 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:476: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_0ce0642d616b0ce1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_2730d92a553ba7a2" hs_bindgen_2730d92a553ba7a2 :: + 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:485: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_2730d92a553ba7a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_20802e5d5aa1a2a7" hs_bindgen_20802e5d5aa1a2a7 :: + 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:495: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_20802e5d5aa1a2a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_1ed56887eed439db" hs_bindgen_1ed56887eed439db :: + 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:503: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_1ed56887eed439db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_42bb02a4e72741a2" hs_bindgen_42bb02a4e72741a2 :: + 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:511: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_42bb02a4e72741a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_b02d1e0b21a29ef2" hs_bindgen_b02d1e0b21a29ef2 :: + 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:521: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_b02d1e0b21a29ef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_1d229fb3091c2cff" hs_bindgen_1d229fb3091c2cff :: + 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:531: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_1d229fb3091c2cff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_069e58a88086498c" hs_bindgen_069e58a88086498c :: + 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:545: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_069e58a88086498c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_c55bf77cc76d4424" hs_bindgen_c55bf77cc76d4424 :: + 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:550: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_c55bf77cc76d4424 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_93ea84072b3e3539" hs_bindgen_93ea84072b3e3539 :: + 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:555: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_93ea84072b3e3539 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_325249692dacb2ba" hs_bindgen_325249692dacb2ba :: + 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:560: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_325249692dacb2ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_8de6da1cdf7f8265" hs_bindgen_8de6da1cdf7f8265 :: + 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:565: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_8de6da1cdf7f8265 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_92dbeab30fd8304e" hs_bindgen_92dbeab30fd8304e :: + 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:570: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_92dbeab30fd8304e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_8bbdf02852edb6b5" hs_bindgen_8bbdf02852edb6b5 :: + 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:577: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_8bbdf02852edb6b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_07b90815d0d65c59" hs_bindgen_07b90815d0d65c59 :: + 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:582: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_07b90815d0d65c59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_1e483dbdbf8ea6cc" hs_bindgen_1e483dbdbf8ea6cc :: + 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:588: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_1e483dbdbf8ea6cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_2284dc3904684369" hs_bindgen_2284dc3904684369 :: + 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:594: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_2284dc3904684369 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_57e6f7673fd6fcfb" hs_bindgen_57e6f7673fd6fcfb :: + 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:600: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_57e6f7673fd6fcfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_015977ba67ac150f" hs_bindgen_015977ba67ac150f :: + 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:606: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_015977ba67ac150f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_091111935ba04052" hs_bindgen_091111935ba04052 :: + 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:611: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_091111935ba04052 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_0a83b50fab28659e" hs_bindgen_0a83b50fab28659e :: + 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:621: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_0a83b50fab28659e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_08f71a25af2f8e30" hs_bindgen_08f71a25af2f8e30 :: + 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:626: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_08f71a25af2f8e30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_370232be1ea8f790" hs_bindgen_370232be1ea8f790 :: + 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:631: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_370232be1ea8f790 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_f35f75dc0f0ce6a1" hs_bindgen_f35f75dc0f0ce6a1 :: + 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:658: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_f35f75dc0f0ce6a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_1e430c70ccbbdc7f" hs_bindgen_1e430c70ccbbdc7f :: + 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:670: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_1e430c70ccbbdc7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_d22511ca63166856" hs_bindgen_d22511ca63166856 :: + 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:676: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_d22511ca63166856 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_35d1f50a31f656d2" hs_bindgen_35d1f50a31f656d2 :: + 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:695: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_35d1f50a31f656d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_901b6a4ce6e4e81b" hs_bindgen_901b6a4ce6e4e81b :: + 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:728: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_901b6a4ce6e4e81b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_078bdd1105f015c5" hs_bindgen_078bdd1105f015c5 :: + 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:752: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_078bdd1105f015c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_3849e13ebf744504" hs_bindgen_3849e13ebf744504 :: + 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:779: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_3849e13ebf744504 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_b2e70fbf116cf558" hs_bindgen_b2e70fbf116cf558 :: + 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:798: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_b2e70fbf116cf558 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_f89c7c1aed9c371d" hs_bindgen_f89c7c1aed9c371d :: + 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:821: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_f89c7c1aed9c371d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_26a14a29c88717c7" hs_bindgen_26a14a29c88717c7 :: + 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:839: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_26a14a29c88717c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_7bb035634edf1265" hs_bindgen_7bb035634edf1265 :: + 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:845: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_7bb035634edf1265 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_a2c073fa791a6bb0" hs_bindgen_a2c073fa791a6bb0 :: + 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:851: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_a2c073fa791a6bb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_33ec4cd975248e54" hs_bindgen_33ec4cd975248e54 :: + 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:856: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_33ec4cd975248e54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_e6044924f6e235c2" hs_bindgen_e6044924f6e235c2 :: + 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:862: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_e6044924f6e235c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_d4a5c82387a7013c" hs_bindgen_d4a5c82387a7013c :: + 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:868: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_d4a5c82387a7013c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_b00cb82f17fa2ad9" hs_bindgen_b00cb82f17fa2ad9 :: + 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:874: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_b00cb82f17fa2ad9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_fafd63986248f73b" hs_bindgen_fafd63986248f73b :: + 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:882: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_fafd63986248f73b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_26f3b582f79e52c2" hs_bindgen_26f3b582f79e52c2 :: + 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:892: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_26f3b582f79e52c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_a0a95e02bda55cb8" hs_bindgen_a0a95e02bda55cb8 :: + 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:905: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_a0a95e02bda55cb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_69942ddcdb83b5a2" hs_bindgen_69942ddcdb83b5a2 :: + 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:911: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_69942ddcdb83b5a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_9be90fa9ba8e2fac" hs_bindgen_9be90fa9ba8e2fac :: + 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:916: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_9be90fa9ba8e2fac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_1a71661b6545c219" hs_bindgen_1a71661b6545c219 :: + 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:921: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_1a71661b6545c219 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_7d9e18dd4feab758" hs_bindgen_7d9e18dd4feab758 :: + 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:926: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_7d9e18dd4feab758 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_a7a5d2850b36fda5" hs_bindgen_a7a5d2850b36fda5 :: + 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:931: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_a7a5d2850b36fda5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_47d7b43671cfdcfe" hs_bindgen_47d7b43671cfdcfe :: + 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:936: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_47d7b43671cfdcfe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_c923ecb1ab706137" hs_bindgen_c923ecb1ab706137 :: + 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:941: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_c923ecb1ab706137 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_ec587e9958bc9917" hs_bindgen_ec587e9958bc9917 :: + 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:947: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_ec587e9958bc9917 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_cd5345b782948883" hs_bindgen_cd5345b782948883 :: + 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:952: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_cd5345b782948883 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_66f1ea1b581200d9" hs_bindgen_66f1ea1b581200d9 :: + 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:957: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_66f1ea1b581200d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_5f0bffdf923647a9" hs_bindgen_5f0bffdf923647a9 :: + 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:962: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_5f0bffdf923647a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_be58d3c6e6534e08" hs_bindgen_be58d3c6e6534e08 :: + 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:967: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_be58d3c6e6534e08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_bf72928073ab1388" hs_bindgen_bf72928073ab1388 :: + 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:972: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_bf72928073ab1388 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_06a1226570a5fef3" hs_bindgen_06a1226570a5fef3 :: + 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:979: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_06a1226570a5fef3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_0640fe25ea3f91e3" hs_bindgen_0640fe25ea3f91e3 :: + 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:984: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_0640fe25ea3f91e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_e71e8842d581c4e8" hs_bindgen_e71e8842d581c4e8 :: + 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:986: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_e71e8842d581c4e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_c6fd77359933e0ed" hs_bindgen_c6fd77359933e0ed :: + 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:988: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_c6fd77359933e0ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_2ed08dad56f9136d" hs_bindgen_2ed08dad56f9136d :: + 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:990: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_2ed08dad56f9136d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_b5e1468f78bcd8d5" hs_bindgen_b5e1468f78bcd8d5 :: + 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:991: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_b5e1468f78bcd8d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_2230a4bae91a7f2f" hs_bindgen_2230a4bae91a7f2f :: + 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:993: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_2230a4bae91a7f2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_b1d3c18dda6919f7" hs_bindgen_b1d3c18dda6919f7 :: + 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:994: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_b1d3c18dda6919f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_8e3d0519f6f9c5f3" hs_bindgen_8e3d0519f6f9c5f3 :: + 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:996: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_8e3d0519f6f9c5f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_00a40c06b8088c94" hs_bindgen_00a40c06b8088c94 :: + 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:997: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_00a40c06b8088c94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_772371555cd2f797" hs_bindgen_772371555cd2f797 :: + 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:998: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_772371555cd2f797 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_c1ed8ad8af692c28" hs_bindgen_c1ed8ad8af692c28 :: + 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:1001: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_c1ed8ad8af692c28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_4a7e4a6bed7fe19a" hs_bindgen_4a7e4a6bed7fe19a :: + 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:1004: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_4a7e4a6bed7fe19a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_9d4bdd17fcee2b97" hs_bindgen_9d4bdd17fcee2b97 :: + 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:1011: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_9d4bdd17fcee2b97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_fe3ae322acd0dda0" hs_bindgen_fe3ae322acd0dda0 :: + 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:1018: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_fe3ae322acd0dda0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_f6f54598df37a376" hs_bindgen_f6f54598df37a376 :: + 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:1023: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_f6f54598df37a376 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_fc912047063f69a7" hs_bindgen_fc912047063f69a7 :: + 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:1027: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_fc912047063f69a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_31def3e484fd791d" hs_bindgen_31def3e484fd791d :: + 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:1029: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_31def3e484fd791d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_9bd8fb4c84c565b9" hs_bindgen_9bd8fb4c84c565b9 :: + 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:1030: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_9bd8fb4c84c565b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_1d8df8be40f34cbd" hs_bindgen_1d8df8be40f34cbd :: + 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:1032: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_1d8df8be40f34cbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_3eb0f6608347f160" hs_bindgen_3eb0f6608347f160 :: + 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:1034: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_3eb0f6608347f160 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_1a7c088c222a3180" hs_bindgen_1a7c088c222a3180 :: + 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:1037: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_1a7c088c222a3180 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_b29cf908fc2337ea" hs_bindgen_b29cf908fc2337ea :: + 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:1039: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_b29cf908fc2337ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_7fb0dd832550e36f" hs_bindgen_7fb0dd832550e36f :: + 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:1046: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_7fb0dd832550e36f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_fee01faa7f1e4b19" hs_bindgen_fee01faa7f1e4b19 :: + 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:1053: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_fee01faa7f1e4b19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_8857031f2c12ae35" hs_bindgen_8857031f2c12ae35 :: + 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:1058: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_8857031f2c12ae35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_db479cd7808676ac" hs_bindgen_db479cd7808676ac :: + 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:1063: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_db479cd7808676ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_12ff0e86847b86ea" hs_bindgen_12ff0e86847b86ea :: + 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:1081: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_12ff0e86847b86ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_7fc46da2c66f6992" hs_bindgen_7fc46da2c66f6992 :: + 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:1092: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_7fc46da2c66f6992 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_cd697512f44ac807" hs_bindgen_cd697512f44ac807 :: + 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:1108: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_cd697512f44ac807 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_22daee6f3ce0de70" hs_bindgen_22daee6f3ce0de70 :: + 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:1112: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_22daee6f3ce0de70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_cb4f59d860dd3c84" hs_bindgen_cb4f59d860dd3c84 :: + 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:1115: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_cb4f59d860dd3c84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_cae107e7d73f5adf" hs_bindgen_cae107e7d73f5adf :: + 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:1117: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_cae107e7d73f5adf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_20fe36ca519e8fe5" hs_bindgen_20fe36ca519e8fe5 :: + 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:1119: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_20fe36ca519e8fe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_1f9556177e5304ef" hs_bindgen_1f9556177e5304ef :: + 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:1121: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_1f9556177e5304ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_bd6891f9e3f77f93" hs_bindgen_bd6891f9e3f77f93 :: + 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:1123: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_bd6891f9e3f77f93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_1521780b100f7208" hs_bindgen_1521780b100f7208 :: + 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:1143: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_1521780b100f7208 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_c2191e2d3a4f1469" hs_bindgen_c2191e2d3a4f1469 :: + 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:1165: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_c2191e2d3a4f1469 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_c7e954dbbfe50f15" hs_bindgen_c7e954dbbfe50f15 :: + 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:1173: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_c7e954dbbfe50f15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_77331a7fd35e714f" hs_bindgen_77331a7fd35e714f :: + 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:1178: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_77331a7fd35e714f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_27487309d82a5d5b" hs_bindgen_27487309d82a5d5b :: + 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:1191: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_27487309d82a5d5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_2aee7c7db0c03a37" hs_bindgen_2aee7c7db0c03a37 :: + 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:1196: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_2aee7c7db0c03a37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_2545d80b5a9c58ee" hs_bindgen_2545d80b5a9c58ee :: + 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:1201: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_2545d80b5a9c58ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_74061b69eb243f8d" hs_bindgen_74061b69eb243f8d :: + 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:1206: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_74061b69eb243f8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_8b0bc5fb530d2c27" hs_bindgen_8b0bc5fb530d2c27 :: + 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:1208: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_8b0bc5fb530d2c27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_97f81eb7e21b23c4" hs_bindgen_97f81eb7e21b23c4 :: + 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:1215: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_97f81eb7e21b23c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_53e107b9a471530e" hs_bindgen_53e107b9a471530e :: + 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:1230: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_53e107b9a471530e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_fceef958bd3da3de" hs_bindgen_fceef958bd3da3de :: + 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:1245: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_fceef958bd3da3de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_d4cc052152b29160" hs_bindgen_d4cc052152b29160 :: + 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:1262: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_d4cc052152b29160 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_bb8002da3945eb5a" hs_bindgen_bb8002da3945eb5a :: + 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:1277: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_bb8002da3945eb5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_0268665918d1be42" hs_bindgen_0268665918d1be42 :: + 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:1293: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_0268665918d1be42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_19ac2bc05bce0d94" hs_bindgen_19ac2bc05bce0d94 :: + 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:1308: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_19ac2bc05bce0d94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_ded02482f425c923" hs_bindgen_ded02482f425c923 :: + 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:1319: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_ded02482f425c923 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_498c69e4c66e0e8b" hs_bindgen_498c69e4c66e0e8b :: + 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:1321: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_498c69e4c66e0e8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_afa215a5486cae8a" hs_bindgen_afa215a5486cae8a :: + 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:1323: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_afa215a5486cae8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_c129aa0948080560" hs_bindgen_c129aa0948080560 :: + 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:1328: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_c129aa0948080560 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_f5f54c1516cf07e3" hs_bindgen_f5f54c1516cf07e3 :: + 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:1333: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_f5f54c1516cf07e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_95a0fb27c76a2c42" hs_bindgen_95a0fb27c76a2c42 :: + 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:1338: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_95a0fb27c76a2c42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_b60c9c2fc7f2a070" hs_bindgen_b60c9c2fc7f2a070 :: + 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:1340: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_b60c9c2fc7f2a070 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_e0f8e6be6a49f6a5" hs_bindgen_e0f8e6be6a49f6a5 :: + 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:1345: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_e0f8e6be6a49f6a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_6dd6f921b74351e6" hs_bindgen_6dd6f921b74351e6 :: + 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:1347: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_6dd6f921b74351e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_2b9d2e2adbf773a3" hs_bindgen_2b9d2e2adbf773a3 :: + 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:1350: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_2b9d2e2adbf773a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_37cb841a9ee5402b" hs_bindgen_37cb841a9ee5402b :: + 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:1355: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_37cb841a9ee5402b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_6a85bf46ce033c7a" hs_bindgen_6a85bf46ce033c7a :: + 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:1360: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_6a85bf46ce033c7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_a8ddcc8667b51680" hs_bindgen_a8ddcc8667b51680 :: + 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:1362: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_a8ddcc8667b51680 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_ef866f791a6bfa03" hs_bindgen_ef866f791a6bfa03 :: + 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:1367: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_ef866f791a6bfa03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_528dba7413115ec0" hs_bindgen_528dba7413115ec0 :: + 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:1369: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_528dba7413115ec0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_61bccf8d68ebda36" hs_bindgen_61bccf8d68ebda36 :: + 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:1372: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_61bccf8d68ebda36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_4c3297e809906533" hs_bindgen_4c3297e809906533 :: + 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:1374: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_4c3297e809906533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_ae824f4e853e4b24" hs_bindgen_ae824f4e853e4b24 :: + 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:1376: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_ae824f4e853e4b24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_b6f86930bd617a43" hs_bindgen_b6f86930bd617a43 :: + 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:1378: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_b6f86930bd617a43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_ef51f341e11bfde8" hs_bindgen_ef51f341e11bfde8 :: + 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:1380: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_ef51f341e11bfde8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_87dfd9ee22290a91" hs_bindgen_87dfd9ee22290a91 :: + 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:1383: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_87dfd9ee22290a91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_c60e9459f7ef1993" hs_bindgen_c60e9459f7ef1993 :: + 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:1385: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_c60e9459f7ef1993 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_26993d4b68bb31c9" hs_bindgen_26993d4b68bb31c9 :: + 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:1388: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_26993d4b68bb31c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_3fbd9250e5e20378" hs_bindgen_3fbd9250e5e20378 :: + 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:1390: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_3fbd9250e5e20378 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_6885b7fcb9207ee4" hs_bindgen_6885b7fcb9207ee4 :: + 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:1396: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_6885b7fcb9207ee4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_a4d6fc4745a32963" hs_bindgen_a4d6fc4745a32963 :: + 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:1399: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_a4d6fc4745a32963 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_4fc98bc8a7be914b" hs_bindgen_4fc98bc8a7be914b :: + 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:1402: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_4fc98bc8a7be914b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_1b8c91dbc8038adc" hs_bindgen_1b8c91dbc8038adc :: + 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:1405: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_1b8c91dbc8038adc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_53ff68bfd292c09d" hs_bindgen_53ff68bfd292c09d :: + 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:1407: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_53ff68bfd292c09d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_f6857716fa2ac6d3" hs_bindgen_f6857716fa2ac6d3 :: + 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:1409: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_f6857716fa2ac6d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_440fff2a5b8f20ca" hs_bindgen_440fff2a5b8f20ca :: + 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:1411: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_440fff2a5b8f20ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_3d0b92d2954b9c6a" hs_bindgen_3d0b92d2954b9c6a :: + 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:1426: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_3d0b92d2954b9c6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_c5627f492b2636a0" hs_bindgen_c5627f492b2636a0 :: + 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:1440: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_c5627f492b2636a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_05b5fd1809bb1c99" hs_bindgen_05b5fd1809bb1c99 :: + 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:1458: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_05b5fd1809bb1c99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_9d7097885250f94a" hs_bindgen_9d7097885250f94a :: + 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:1473: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_9d7097885250f94a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_f0073bf8a20b3c04" hs_bindgen_f0073bf8a20b3c04 :: + 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:1479: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_f0073bf8a20b3c04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_b84e6c5893429bb2" hs_bindgen_b84e6c5893429bb2 :: + 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:1481: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_b84e6c5893429bb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_5321635ce593bb33" hs_bindgen_5321635ce593bb33 :: + 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:1483: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_5321635ce593bb33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_0c39deab892706e5" hs_bindgen_0c39deab892706e5 :: + 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:1485: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_0c39deab892706e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_54d467702dd3e7e5" hs_bindgen_54d467702dd3e7e5 :: + 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:1491: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_54d467702dd3e7e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_28267fdc2fe956f9" hs_bindgen_28267fdc2fe956f9 :: + 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:1493: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_28267fdc2fe956f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_868362d3179952b3" hs_bindgen_868362d3179952b3 :: + 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:1495: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_868362d3179952b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_c914dfc788f1b30a" hs_bindgen_c914dfc788f1b30a :: + 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:1497: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_c914dfc788f1b30a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_11df2ef4a6a4c900" hs_bindgen_11df2ef4a6a4c900 :: + 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:1503: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_11df2ef4a6a4c900 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_3fc63c1f17070a78" hs_bindgen_3fc63c1f17070a78 :: + 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:1505: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_3fc63c1f17070a78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_7ac60c4034ff4a9b" hs_bindgen_7ac60c4034ff4a9b :: + 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:1507: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_7ac60c4034ff4a9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_eb4a2b5871b4d432" hs_bindgen_eb4a2b5871b4d432 :: + 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:1509: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_eb4a2b5871b4d432 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_4a501589fe6f674f" hs_bindgen_4a501589fe6f674f :: + 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:1515: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_4a501589fe6f674f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_3af09c7489db1546" hs_bindgen_3af09c7489db1546 :: + 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:1517: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_3af09c7489db1546 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_e59c9b0256f62ddc" hs_bindgen_e59c9b0256f62ddc :: + 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:1519: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_e59c9b0256f62ddc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_ee4c047fbffadedc" hs_bindgen_ee4c047fbffadedc :: + 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:1521: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_ee4c047fbffadedc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_e1a4a95b78bd59ec" hs_bindgen_e1a4a95b78bd59ec :: + 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:1528: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_e1a4a95b78bd59ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_761ed82c58fccdcb" hs_bindgen_761ed82c58fccdcb :: + 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:1531: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_761ed82c58fccdcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_516ab8be7f52c63c" hs_bindgen_516ab8be7f52c63c :: + 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:1537: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_516ab8be7f52c63c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_34cf7aba331143e2" hs_bindgen_34cf7aba331143e2 :: + 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:1539: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_34cf7aba331143e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_63c1ff40fff6526a" hs_bindgen_63c1ff40fff6526a :: + 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:1543: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_63c1ff40fff6526a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_6445f8a3c770ed28" hs_bindgen_6445f8a3c770ed28 :: + 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:1547: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_6445f8a3c770ed28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_a73b6433eeaf5625" hs_bindgen_a73b6433eeaf5625 :: + 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:1554: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_a73b6433eeaf5625 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_8f30ec397e41b065" hs_bindgen_8f30ec397e41b065 :: + 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:1557: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_8f30ec397e41b065 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_2e5aa15c060c24f1" hs_bindgen_2e5aa15c060c24f1 :: + 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:1564: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_2e5aa15c060c24f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_3eeff79fb6fda263" hs_bindgen_3eeff79fb6fda263 :: + 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:1567: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_3eeff79fb6fda263 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_28846d4ed28d832f" hs_bindgen_28846d4ed28d832f :: + 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:1574: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_28846d4ed28d832f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_9e357db26f6033cf" hs_bindgen_9e357db26f6033cf :: + 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:1577: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_9e357db26f6033cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_96a2a9d46d6bdd50" hs_bindgen_96a2a9d46d6bdd50 :: + 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:1583: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_96a2a9d46d6bdd50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_2a96719b53254779" hs_bindgen_2a96719b53254779 :: + 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:1586: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_2a96719b53254779 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_5843bc8459ccaf6f" hs_bindgen_5843bc8459ccaf6f :: + 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:1589: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_5843bc8459ccaf6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_55661591dd30661a" hs_bindgen_55661591dd30661a :: + 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:1592: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_55661591dd30661a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_735876f98c5f7ad5" hs_bindgen_735876f98c5f7ad5 :: + 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:1595: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_735876f98c5f7ad5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_e63fcd69bd386b6e" hs_bindgen_e63fcd69bd386b6e :: + 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:1598: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_e63fcd69bd386b6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_c4df4159b2eb6622" hs_bindgen_c4df4159b2eb6622 :: + 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:1601: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_c4df4159b2eb6622 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_b71837379013ce95" hs_bindgen_b71837379013ce95 :: + 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:1605: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_b71837379013ce95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_525e60d8a7dc3ea0" hs_bindgen_525e60d8a7dc3ea0 :: + 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:1609: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_525e60d8a7dc3ea0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_4506e7fbba947afb" hs_bindgen_4506e7fbba947afb :: + 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:1612: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_4506e7fbba947afb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_3c3b986f2910d856" hs_bindgen_3c3b986f2910d856 :: + 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:1619: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_3c3b986f2910d856 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_9a886dd2053f60a0" hs_bindgen_9a886dd2053f60a0 :: + 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:1627: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_9a886dd2053f60a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_3c7c28262c06c60a" hs_bindgen_3c7c28262c06c60a :: + 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:1632: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_3c7c28262c06c60a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_1944ce304af90db4" hs_bindgen_1944ce304af90db4 :: + 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:1635: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_1944ce304af90db4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_d5321e2d51cd9ea5" hs_bindgen_d5321e2d51cd9ea5 :: + 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:1638: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_d5321e2d51cd9ea5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_5d8015eac96ec717" hs_bindgen_5d8015eac96ec717 :: + 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:1651: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_5d8015eac96ec717 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_6038ff62b267efe8" hs_bindgen_6038ff62b267efe8 :: + 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:1656: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_6038ff62b267efe8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_cdeb5fccb7ceb2f7" hs_bindgen_cdeb5fccb7ceb2f7 :: + 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:1659: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_cdeb5fccb7ceb2f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_60436ca48703f519" hs_bindgen_60436ca48703f519 :: + 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:1662: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_60436ca48703f519 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_3addc25c8877eefe" hs_bindgen_3addc25c8877eefe :: + 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:1674: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_3addc25c8877eefe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_d9d91a031905a85f" hs_bindgen_d9d91a031905a85f :: + 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:1679: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_d9d91a031905a85f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_5c604fec3832ecd5" hs_bindgen_5c604fec3832ecd5 :: + 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:1681: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_5c604fec3832ecd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_c76c885c3e284a0c" hs_bindgen_c76c885c3e284a0c :: + 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:1683: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_c76c885c3e284a0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_93c91612d8334c38" hs_bindgen_93c91612d8334c38 :: + 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:1686: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_93c91612d8334c38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_482e85ab70d9e311" hs_bindgen_482e85ab70d9e311 :: + 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:1694: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_482e85ab70d9e311 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_4afd105014a6888e" hs_bindgen_4afd105014a6888e :: + 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:1702: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_4afd105014a6888e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_567a2462e50330ba" hs_bindgen_567a2462e50330ba :: + 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:1704: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_567a2462e50330ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_4224ab9d5f32de02" hs_bindgen_4224ab9d5f32de02 :: + 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:1705: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_4224ab9d5f32de02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_3f713eccf956b799" hs_bindgen_3f713eccf956b799 :: + 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:1713: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_3f713eccf956b799 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_38da18f6450e83ee" hs_bindgen_38da18f6450e83ee :: + 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:1718: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_38da18f6450e83ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_484c8573a9963dc7" hs_bindgen_484c8573a9963dc7 :: + 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:1720: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_484c8573a9963dc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_6760e6869c66b46c" hs_bindgen_6760e6869c66b46c :: + 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:1723: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_6760e6869c66b46c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_ad35d74a3563785a" hs_bindgen_ad35d74a3563785a :: + 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:1725: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_ad35d74a3563785a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_517360443f70a30d" hs_bindgen_517360443f70a30d :: + 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:1728: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_517360443f70a30d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_a18a5ef2f87fb0ab" hs_bindgen_a18a5ef2f87fb0ab :: + 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:1742: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_a18a5ef2f87fb0ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_a18a1316c9999dc2" hs_bindgen_a18a1316c9999dc2 :: + 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:1747: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_a18a1316c9999dc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_e217270efb266ea4" hs_bindgen_e217270efb266ea4 :: + 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:1750: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_e217270efb266ea4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_497a4fa0405f3151" hs_bindgen_497a4fa0405f3151 :: + 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:1755: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_497a4fa0405f3151 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_074f306ed15791a4" hs_bindgen_074f306ed15791a4 :: + 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:1759: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_074f306ed15791a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_ea64bf8385b02d6f" hs_bindgen_ea64bf8385b02d6f :: + 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:1772: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_ea64bf8385b02d6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_f9c610790eb61c26" hs_bindgen_f9c610790eb61c26 :: + 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:1777: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_f9c610790eb61c26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_f061b2894ff1b304" hs_bindgen_f061b2894ff1b304 :: + 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:1780: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_f061b2894ff1b304 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_d0bcda5a963b8a6b" hs_bindgen_d0bcda5a963b8a6b :: + 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:1785: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_d0bcda5a963b8a6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_cc982daa49ce28cd" hs_bindgen_cc982daa49ce28cd :: + 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:1798: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_cc982daa49ce28cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_07dc0e4314b86a5f" hs_bindgen_07dc0e4314b86a5f :: + 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:1805: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_07dc0e4314b86a5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_ad5b235649de798e" hs_bindgen_ad5b235649de798e :: + 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:1820: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_ad5b235649de798e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_1872493c033ba79c" hs_bindgen_1872493c033ba79c :: + 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:1835: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_1872493c033ba79c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_d6b15323b1809169" hs_bindgen_d6b15323b1809169 :: + 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:1836: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_d6b15323b1809169 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_923c0fc1812c6aa5" hs_bindgen_923c0fc1812c6aa5 :: + 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:1841: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_923c0fc1812c6aa5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_7be7234c35daa3f9" hs_bindgen_7be7234c35daa3f9 :: + 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:1843: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_7be7234c35daa3f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_ee0e5e59f2aa344f" hs_bindgen_ee0e5e59f2aa344f :: + 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:1846: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_ee0e5e59f2aa344f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_7b237394ef8de5af" hs_bindgen_7b237394ef8de5af :: + 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:1847: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_7b237394ef8de5af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_4b31c6d2828f6d11" hs_bindgen_4b31c6d2828f6d11 :: + 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:1849: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_4b31c6d2828f6d11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_0b53753c76ae2802" hs_bindgen_0b53753c76ae2802 :: + 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:1850: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_0b53753c76ae2802 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_4df40676d4b0dff8" hs_bindgen_4df40676d4b0dff8 :: + 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:1853: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_4df40676d4b0dff8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_ed513e460099daa2" hs_bindgen_ed513e460099daa2 :: + 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:1855: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_ed513e460099daa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_fcc199fa24b1df48" hs_bindgen_fcc199fa24b1df48 :: + 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:1856: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_fcc199fa24b1df48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_4d243434c0c30f86" hs_bindgen_4d243434c0c30f86 :: + 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:1857: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_4d243434c0c30f86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_a0f631730618dd79" hs_bindgen_a0f631730618dd79 :: + 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:1859: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_a0f631730618dd79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_30e396f0b6412d77" hs_bindgen_30e396f0b6412d77 :: + 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:1862: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_30e396f0b6412d77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_17253fd1d4eb7aa4" hs_bindgen_17253fd1d4eb7aa4 :: + 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:1864: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_17253fd1d4eb7aa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_c83fa403c708247b" hs_bindgen_c83fa403c708247b :: + 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:1867: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_c83fa403c708247b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_561d7bb8bcaa5e09" hs_bindgen_561d7bb8bcaa5e09 :: + 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:1871: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_561d7bb8bcaa5e09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_a8e76d7c023e7cb6" hs_bindgen_a8e76d7c023e7cb6 :: + 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:1874: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_a8e76d7c023e7cb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_edaff6c778144da8" hs_bindgen_edaff6c778144da8 :: + 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:1877: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_edaff6c778144da8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_b6219b237aa91bf7" hs_bindgen_b6219b237aa91bf7 :: + 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:1893: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_b6219b237aa91bf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_9d235e13732dd47d" hs_bindgen_9d235e13732dd47d :: + 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:1899: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_9d235e13732dd47d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_ea656f82069b0d09" hs_bindgen_ea656f82069b0d09 :: + 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:1910: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_ea656f82069b0d09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_06f47bed329d0770" hs_bindgen_06f47bed329d0770 :: + 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:1925: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_06f47bed329d0770 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_efb3821e2a889e0d" hs_bindgen_efb3821e2a889e0d :: + 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:1933: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_efb3821e2a889e0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_28be82ce4f57aa7c" hs_bindgen_28be82ce4f57aa7c :: + 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:1935: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_28be82ce4f57aa7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_eefdea3f2290c792" hs_bindgen_eefdea3f2290c792 :: + 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:1937: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_eefdea3f2290c792 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_84b5425c1d19ace6" hs_bindgen_84b5425c1d19ace6 :: + 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:1943: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_84b5425c1d19ace6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_97469982d20a9e84" hs_bindgen_97469982d20a9e84 :: + 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:1950: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_97469982d20a9e84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_0eb61edcde026867" hs_bindgen_0eb61edcde026867 :: + 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:1968: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_0eb61edcde026867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_1d8d7647179cf32d" hs_bindgen_1d8d7647179cf32d :: + 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:1977: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_1d8d7647179cf32d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_837695b850056a2e" hs_bindgen_837695b850056a2e :: + 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:1985: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_837695b850056a2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_8cec10e510aab98e" hs_bindgen_8cec10e510aab98e :: + 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:1995: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_8cec10e510aab98e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_2fc068e86ad57d4d" hs_bindgen_2fc068e86ad57d4d :: + 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:2014: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_2fc068e86ad57d4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_71941955e458c4bb" hs_bindgen_71941955e458c4bb :: + 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:2021: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_71941955e458c4bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_01ae913f0f79d5e4" hs_bindgen_01ae913f0f79d5e4 :: + 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:2027: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_01ae913f0f79d5e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_032a7fcae48bfae4" hs_bindgen_032a7fcae48bfae4 :: + 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:2033: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_032a7fcae48bfae4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_b957b68d1062d69c" hs_bindgen_b957b68d1062d69c :: + 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:2046: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_b957b68d1062d69c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_92f2bca00cd418ef" hs_bindgen_92f2bca00cd418ef :: + 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:2054: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_92f2bca00cd418ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_9256602e7505afc8" hs_bindgen_9256602e7505afc8 :: + 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:2063: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_9256602e7505afc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_a26d9bb2083cf584" hs_bindgen_a26d9bb2083cf584 :: + 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:2074: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_a26d9bb2083cf584 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_b8d6e6ddde657dcb" hs_bindgen_b8d6e6ddde657dcb :: + 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:2085: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_b8d6e6ddde657dcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_867ad4181097501a" hs_bindgen_867ad4181097501a :: + 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:2092: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_867ad4181097501a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_abcea253e1fca3e2" hs_bindgen_abcea253e1fca3e2 :: + 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:2095: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_abcea253e1fca3e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_a171b9c0d7727518" hs_bindgen_a171b9c0d7727518 :: + 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:2098: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_a171b9c0d7727518 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_aef278f8b72b777f" hs_bindgen_aef278f8b72b777f :: + 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:2110: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_aef278f8b72b777f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_d73a98cc7c8dcd88" hs_bindgen_d73a98cc7c8dcd88 :: + 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:2118: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_d73a98cc7c8dcd88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_9deb7c91eef2a97c" hs_bindgen_9deb7c91eef2a97c :: + 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:2133: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_9deb7c91eef2a97c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_4c06e53b0474f218" hs_bindgen_4c06e53b0474f218 :: + 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:2152: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_4c06e53b0474f218 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_db97047d28f01c51" hs_bindgen_db97047d28f01c51 :: + 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:2168: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_db97047d28f01c51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_7bcdc5738160a1d4" hs_bindgen_7bcdc5738160a1d4 :: + 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:2195: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_7bcdc5738160a1d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_f2971bc1b264aeb6" hs_bindgen_f2971bc1b264aeb6 :: + 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:2213: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_f2971bc1b264aeb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_a2be771a342fdcd0" hs_bindgen_a2be771a342fdcd0 :: + 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:2234: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_a2be771a342fdcd0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_d1e8148e93b18e1f" hs_bindgen_d1e8148e93b18e1f :: + 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:2255: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_d1e8148e93b18e1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_ca8489c6ba03eacc" hs_bindgen_ca8489c6ba03eacc :: + 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:2273: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_ca8489c6ba03eacc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_c81d879562be956b" hs_bindgen_c81d879562be956b :: + 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:2281: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_c81d879562be956b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_19e16152a564dd81" hs_bindgen_19e16152a564dd81 :: + 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:2291: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_19e16152a564dd81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_1171feaba5710b44" hs_bindgen_1171feaba5710b44 :: + 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:2303: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_1171feaba5710b44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_a0fe5e55c8660a17" hs_bindgen_a0fe5e55c8660a17 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2310: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_a0fe5e55c8660a17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_2379a5784b8957f7" hs_bindgen_2379a5784b8957f7 :: + 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:2321: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_2379a5784b8957f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_f1b7791209ca25bb" hs_bindgen_f1b7791209ca25bb :: + 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:2333: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_f1b7791209ca25bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_d9df76f8831d268c" hs_bindgen_d9df76f8831d268c :: + 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:2340: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_d9df76f8831d268c diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/Safe.hs new file mode 100644 index 00000000..d292141b --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/Safe.hs @@ -0,0 +1,13480 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_6_1.Safe where + +import Botan.Bindings.Generated.Botan_3_6_1 +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_3d863fb5d0225a2d (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_bc20d460378a0c79 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_245146db0d452ffb (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_4c48dcba1a47191b (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_134716511fefdcc4 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_48e89c3c4e18e3e5 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_691cd0846af86001 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_e2142587db0e473f (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_39902d0016b8de30 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_20aecdaf352d8fa4 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_94484e3143bafa4d (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c0bc6d5b72b5aebd (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f79f7a863699d6a9 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_56a0b4474c9ca897 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b85c1d211e833c06 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_caf19793ce6fc548 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d58e17d900e566b5 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d747b803c0069199 (" + , " 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_14959d7bb6ad7f58 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_14ae7c093e0ca21d (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_857bcefe0e3ffffd (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebad59e474e96e80 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_45ddaff261bd711d (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_57722945a8fdb814 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4df2b55f2f12110e (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_765041899ea6df76 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_77be3c01909cf9ac (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2763a9f7d7f0d46e (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4532186f13cf451c (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_32353809aa51a4c7 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebe11f1e13d57696 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_3c9d3f5880b10978 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cc26ccc7933cd8ab (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a6ac36c3c55c8a2e (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ff47b68033ef1af8 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b33a5b2cd323bf37 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82a957c5895d3685 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cfaa758924ec364e (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7e0d98b88690ab0 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3cd62daa7fc5a8b0 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_c7e6bce766ec3dbe (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_24b6dba982ad8b18 (" + , " 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_1708c7fd23f16117 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fead194a0cdf5a2a (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aa0c538997b55b1c (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ea54ff259b6c313d (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_efffa2ef32c045a1 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_08982124b1d5606a (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73356b4d17182c7c (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_6a18712e4f69dd12 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_bb4dea0031256b2e (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2451f1d1498cd4f1 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_76db1c3933fa1044 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc354cbf1b15d8d8 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fb93a734836cbe22 (" + , " 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_466ec7ff0067a357 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_97b4ae6681491fa8 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_b48568c46289031a (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_528745354739ba70 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2e8c1ebee5b3e16c (" + , " 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_68359bf960d9e2df (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_1bec295572fb738a (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0061d180203570c3 (" + , " 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_a101e23d2e29c1a6 (" + , " 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_e135ae73d130268e (" + , " 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_2b61b9b5241b7b75 (" + , " 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_f2a94a87226de491 (" + , " 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_762d28d41f048caa (" + , " 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_9c03bec885e60359 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_44a843674b044e28 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3df1d2c302d44e6a (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_dc5004c8fb26485d (" + , " 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_4042108e962370f2 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_d957d5f6d2615c99 (" + , " 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_138f537eedfd39f6 (" + , " 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_8ba9022b30c24058 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_202e191a6bfb1ca1 (" + , " 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_cd90228a8d5857d8 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_b5f5a239b4701c52 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4e3aa960d50ef434 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2c14236022950298 (" + , " 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_a416725401e3089d (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_b91ceb64e82ed86e (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1f169120045d7553 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5c6b877b93eaed71 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_00fe424c332fc1bc (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a6552b5dced6ebde (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_95ac4d00b39bed0e (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fa8fb7a1814cce50 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3e36afce1a82e03 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0885738c3b9f3c61 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50fd9fe4115161ed (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_8e86ba2a2c99dbce (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_1d18c28f5ff109ea (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_5979b266b85c5742 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_86025864441025b4 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_761ec4e5e4edae99 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_279187881336bb93 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6b65058e7ec08a27 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bbd604a6f90b1d0b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b98bf5be14607b5a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d825b5d6b49bae3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7710735b9e4fe3ba (" + , " 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_4722796c26c0f7cf (" + , " 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_d78171eaa0a3628b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be9bb7d5cd81ab95 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2b54356e26c62149 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52b4b8356456c7c0 (" + , " 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_0b1d9e782a4d3414 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_beaa3d82fa41547d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d97a0cb3fd6c887 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd61b5708f649963 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eeed289b1cf6e2cf (" + , " 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_c8e53409fc507f19 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7af7fe2e44c74c4b (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bc2d5f921fe4c7ce (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1afa58b25602c70e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1738b26442b9d14f (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_27e991334a04f2f5 (" + , " 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_ae43e4e7ef0a2ab5 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_393aedb61214a4b7 (" + , " 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_0a35796a942e721e (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ed35ef12d8baf1b1 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_476c91dd0ac82920 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_26b930ef8a58f046 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f19eba37be7cef3c (" + , " 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_be2f03f68bcae1cc (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_033ffd5e46e67c83 (" + , " 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_792103950934c078 (" + , " 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_bbc6ef0ebf0c5b99 (" + , " 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_a07998a438a8c842 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c8cd59c2df5b5d58 (" + , " 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_81593205095dabf5 (" + , " 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_b31db71e76dad5d8 (" + , " 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_cf905277cabaa71c (" + , " 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_ddd757d51c36b515 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_41815dc37519169c (" + , " 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_c2aae71f6d397158 (" + , " 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_c910ca337ce3fc37 (" + , " 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_3254302e499ba373 (" + , " 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_5f22c01d5d1b39a2 (" + , " 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_e8a27d8dee606d67 (" + , " 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_fb346095a5497e42 (" + , " 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_a03db0039f54fc21 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc623a4626cbac9e (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_975d251ab7f3d327 (" + , " 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_08bebfd11f135ad8 (" + , " 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_7a88727af52b1ef8 (" + , " 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_02351ca2c49052d3 (" + , " 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_f38c2c9d98babced (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_72016c13d8a51505 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_15a31ef24816a86a (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34356db75aebeb30 (" + , " 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_a18e9a08b8e24095 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e755f7d9c0b25489 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6b68e8074bef2b1 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9cceabe67b7e8929 (" + , " 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_8b5f07e33b877d05 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0d4526954da1beb1 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f2ea415bedaff0f (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cb26e8367c636da2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05be25d17e8797f4 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d8c04c3f37998bba (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_375bf1eb12df8c15 (" + , " 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_89a0be04964e2feb (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_344226635ef23adb (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_03ca6fc2792dee8d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c358818b8f89309f (" + , " 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_565665310da0985c (" + , " 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_b5d15c0c7d04a762 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9fc26b6a7e824007 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c57460e7cebdb73c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dfb0ebb05d92b61a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9a83abb12dfb365a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aecdcbb59f777b68 (" + , " 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_1c7eee11e12e5ffb (" + , " 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_c79ea0fc22756d89 (" + , " 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_00e214a73e04c6ca (" + , " 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_a9adddc9cbbd1ae3 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_216a4c025ca7976e (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5b2408e913aac3f2 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b11b5faaecf23dd (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc9eca7a4acf8254 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d0d2c70e85a6e79f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a32983d46427ad3c (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_99acc137bf7b6521 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2b6cad8912e972c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7894f98d18571dfe (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ca92442da7b9871 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40ed55fabe283b15 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6ccc96bccf79ef80 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_478ac631f83bb33f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a2182b59b1d2b8d (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05960b494be45e39 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3881b962ab226979 (" + , " 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_7c88f068f78992d7 (" + , " 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_5b07dd4988bdc9eb (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_78b6cf4035118262 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5fe7f3e8d44f547 (" + , " 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_de38e1678fb9afb9 (" + , " 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_7ec2b812b0b2b97b (" + , " 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_906499e9f3c9c37b (" + , " 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_71771e1747322eb6 (" + , " 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_68ecf9b1661747cf (" + , " 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_57f10ccede8f1f76 (" + , " 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_d741a11bf91064f3 (" + , " 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_203af135796dd314 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_e89e640bac4e2000 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0db97559249d59ea (" + , " 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_2ac86a2b7151eafd (" + , " 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_bd8e3e70acb318d2 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a5d5664e0e312936 (" + , " 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_216a7c89ef50115a (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_81e26a27068e0113 (" + , " 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_012fec17f6203aab (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f393c2d2f0f000ff (" + , " 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_fdec014ebbf28bc9 (" + , " 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_7dd73f5527262c44 (" + , " 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_5d9f60ee09afd424 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2b0064eb945e52eb (" + , " 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_413dde9ff9b1019f (" + , " 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_5839fab41e207003 (" + , " 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_464c8f90bbc5a932 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_769249a31f092818 (" + , " 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_1b124e52fb941b9b (" + , " 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_727a2013b8a9266f (" + , " 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_7ab6c8092583f10a (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cd93db859c1e0c8b (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_176820958e90d2f8 (" + , " 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_6f87555de08cf02e (" + , " 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_09dd9b636ca64354 (" + , " 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_0aebe390b9b6ddad (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b2fb940cd781bb9e (" + , " 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_d09df154e99c351c (" + , " 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_038a2cd2d6b84cb2 (" + , " 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_ec8b1bc311c1d2dd (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_24a3cdda594524da (" + , " 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_331d41be41c3eb68 (" + , " 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_6221bf7de1ad17ad (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2a7d30ec765e7601 (" + , " 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_3daf49a8c6440f15 (" + , " 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_5937ad125a8afafb (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_77e2ae27ee1f092e (" + , " 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_592aa98a5025e01d (" + , " 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_92cde48eb058e392 (" + , " 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_ae8f596aca64e0e3 (" + , " 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_0ef5c9120c2884ed (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5d29c3541f8c069b (" + , " 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_342ba8978e58d1c6 (" + , " 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_c11ce2488558650f (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_93cc2a9648a12485 (" + , " 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_2614fc57ed6e2cce (" + , " 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_3fcbe32717952153 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a4165cbe53be976b (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8e2deb98899b846a (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bf0a3c95b6fe88a9 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b8b4ec3af2b52917 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dba5d03835c34c9e (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a950d4a3934047cb (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5fd794ba34cb57e5 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a45182d7521f1262 (" + , " 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_c5eca6d226b41c9e (" + , " 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_57328a022303d5ba (" + , " 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_1210fef8f1f6f329 (" + , " 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_96069a15f7facd51 (" + , " 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_f00bb93ce09094a3 (" + , " 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_c04dfcc4288dc69d (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4cfb8ff2e94b15b (" + , " 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_3dc57f0722753587 (" + , " 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_9ca30b0f413109a6 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5faa07539c7fd4e4 (" + , " 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_12f0e6ab596e043b (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee372a5ff89b0280 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a43cc65536242b28 (" + , " 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_0de477655965b23f (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_04c5d402e2351d30 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f3a7d2689a042667 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_67ce2504227ee9d9 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c5e88f5bbd2c5e04 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_94c2eb6484906235 (" + , " 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_b313d31dfcba07d4 (" + , " 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_284c4d2ad98760a2 (" + , " 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_8c0980c3a09d819e (" + , " 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_b83077907a73fcbf (" + , " 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_4a16968b0c9decfd (" + , " 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_b1365150434bfd33 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bf09acabe357b264 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3d2c9d7ecefa461c (" + , " 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_4a3b55264eb1988c (" + , " 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_335056c3b61aee48 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0cb53ffb146cd8d8 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f1c4c817c7abd15d (" + , " 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_31ae55fcd30e8523 (" + , " 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_a52b1ee2c33e7768 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fc7715b99ad352f0 (" + , " 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_bcd940dd2e80e558 (" + , " 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_169c624cda968fe5 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_a5e94855f4d3009e (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_083c5dbc3449aa06 (" + , " 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_30e5fcc347faf23c (" + , " 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_90a4520ff59cb37b (" + , " 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_8bca5d4f34f4a248 (" + , " 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_56d11a31a23fa1fb (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e86b05b7680cf0c (" + , " 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_47c611708953ecb4 (" + , " 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_37007a60b7414420 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_7862fded0e0c9a51 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_47bb6d98ab528577 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92d96ce45e505c99 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa9df3e65a8a7e82 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_34d9bbd20ca34412 (" + , " 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_a6769e21392c660c (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ba41ba2521b07ff1 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_3d863fb5d0225a2d" hs_bindgen_3d863fb5d0225a2d :: + 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:170: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_3d863fb5d0225a2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_bc20d460378a0c79" hs_bindgen_bc20d460378a0c79 :: + 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:179: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_bc20d460378a0c79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_245146db0d452ffb" hs_bindgen_245146db0d452ffb :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_245146db0d452ffb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_4c48dcba1a47191b" hs_bindgen_4c48dcba1a47191b :: + 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:192: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_4c48dcba1a47191b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_134716511fefdcc4" hs_bindgen_134716511fefdcc4 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_134716511fefdcc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_48e89c3c4e18e3e5" hs_bindgen_48e89c3c4e18e3e5 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_48e89c3c4e18e3e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_691cd0846af86001" hs_bindgen_691cd0846af86001 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_691cd0846af86001 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_e2142587db0e473f" hs_bindgen_e2142587db0e473f :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_e2142587db0e473f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_39902d0016b8de30" hs_bindgen_39902d0016b8de30 :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_39902d0016b8de30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_20aecdaf352d8fa4" hs_bindgen_20aecdaf352d8fa4 :: + 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:223: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_20aecdaf352d8fa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_94484e3143bafa4d" hs_bindgen_94484e3143bafa4d :: + 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:229: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_94484e3143bafa4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_c0bc6d5b72b5aebd" hs_bindgen_c0bc6d5b72b5aebd :: + 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:235: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_c0bc6d5b72b5aebd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_f79f7a863699d6a9" hs_bindgen_f79f7a863699d6a9 :: + 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:247: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_f79f7a863699d6a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_56a0b4474c9ca897" hs_bindgen_56a0b4474c9ca897 :: + 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:257: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_56a0b4474c9ca897 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_b85c1d211e833c06" hs_bindgen_b85c1d211e833c06 :: + 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:262:28@ + +__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_b85c1d211e833c06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_caf19793ce6fc548" hs_bindgen_caf19793ce6fc548 :: + 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:267: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_caf19793ce6fc548 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_d58e17d900e566b5" hs_bindgen_d58e17d900e566b5 :: + 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:284: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 "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_d58e17d900e566b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_d747b803c0069199" hs_bindgen_d747b803c0069199 :: + 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:296: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_d747b803c0069199 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_14959d7bb6ad7f58" hs_bindgen_14959d7bb6ad7f58 :: + 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:310: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_14959d7bb6ad7f58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_14ae7c093e0ca21d" hs_bindgen_14ae7c093e0ca21d :: + 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:318: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_14ae7c093e0ca21d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_857bcefe0e3ffffd" hs_bindgen_857bcefe0e3ffffd :: + 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:328: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_857bcefe0e3ffffd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_ebad59e474e96e80" hs_bindgen_ebad59e474e96e80 :: + 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:338: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_ebad59e474e96e80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_45ddaff261bd711d" hs_bindgen_45ddaff261bd711d :: + 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:348: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_45ddaff261bd711d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_57722945a8fdb814" hs_bindgen_57722945a8fdb814 :: + 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:355: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_57722945a8fdb814 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_4df2b55f2f12110e" hs_bindgen_4df2b55f2f12110e :: + 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:369: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_4df2b55f2f12110e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_765041899ea6df76" hs_bindgen_765041899ea6df76 :: + 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:377: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_765041899ea6df76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_77be3c01909cf9ac" hs_bindgen_77be3c01909cf9ac :: + 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:385: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_77be3c01909cf9ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_2763a9f7d7f0d46e" hs_bindgen_2763a9f7d7f0d46e :: + 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:393: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_2763a9f7d7f0d46e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_4532186f13cf451c" hs_bindgen_4532186f13cf451c :: + 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:402: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_4532186f13cf451c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_32353809aa51a4c7" hs_bindgen_32353809aa51a4c7 :: + 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:412: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_32353809aa51a4c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_ebe11f1e13d57696" hs_bindgen_ebe11f1e13d57696 :: + 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:420: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_ebe11f1e13d57696 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_3c9d3f5880b10978" hs_bindgen_3c9d3f5880b10978 :: + 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:427: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_3c9d3f5880b10978 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_cc26ccc7933cd8ab" hs_bindgen_cc26ccc7933cd8ab :: + 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:435: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_cc26ccc7933cd8ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_a6ac36c3c55c8a2e" hs_bindgen_a6ac36c3c55c8a2e :: + 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:450: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_a6ac36c3c55c8a2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_ff47b68033ef1af8" hs_bindgen_ff47b68033ef1af8 :: + 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:458: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_ff47b68033ef1af8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_b33a5b2cd323bf37" hs_bindgen_b33a5b2cd323bf37 :: + 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:467: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_b33a5b2cd323bf37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_82a957c5895d3685" hs_bindgen_82a957c5895d3685 :: + 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:476: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_82a957c5895d3685 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_cfaa758924ec364e" hs_bindgen_cfaa758924ec364e :: + 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:485: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_cfaa758924ec364e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_c7e0d98b88690ab0" hs_bindgen_c7e0d98b88690ab0 :: + 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:495: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_c7e0d98b88690ab0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_3cd62daa7fc5a8b0" hs_bindgen_3cd62daa7fc5a8b0 :: + 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:503: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_3cd62daa7fc5a8b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_c7e6bce766ec3dbe" hs_bindgen_c7e6bce766ec3dbe :: + 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:511: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_c7e6bce766ec3dbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_24b6dba982ad8b18" hs_bindgen_24b6dba982ad8b18 :: + 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:521: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_24b6dba982ad8b18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_1708c7fd23f16117" hs_bindgen_1708c7fd23f16117 :: + 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:531: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_1708c7fd23f16117 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_fead194a0cdf5a2a" hs_bindgen_fead194a0cdf5a2a :: + 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:545: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_fead194a0cdf5a2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_aa0c538997b55b1c" hs_bindgen_aa0c538997b55b1c :: + 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:550: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_aa0c538997b55b1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_ea54ff259b6c313d" hs_bindgen_ea54ff259b6c313d :: + 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:555: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_ea54ff259b6c313d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_efffa2ef32c045a1" hs_bindgen_efffa2ef32c045a1 :: + 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:560: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_efffa2ef32c045a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_08982124b1d5606a" hs_bindgen_08982124b1d5606a :: + 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:565: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_08982124b1d5606a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_73356b4d17182c7c" hs_bindgen_73356b4d17182c7c :: + 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:570: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_73356b4d17182c7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_6a18712e4f69dd12" hs_bindgen_6a18712e4f69dd12 :: + 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:577: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_6a18712e4f69dd12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_bb4dea0031256b2e" hs_bindgen_bb4dea0031256b2e :: + 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:582: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_bb4dea0031256b2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_2451f1d1498cd4f1" hs_bindgen_2451f1d1498cd4f1 :: + 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:588: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_2451f1d1498cd4f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_76db1c3933fa1044" hs_bindgen_76db1c3933fa1044 :: + 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:594: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_76db1c3933fa1044 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_bc354cbf1b15d8d8" hs_bindgen_bc354cbf1b15d8d8 :: + 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:600:5@ + +__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_bc354cbf1b15d8d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_fb93a734836cbe22" hs_bindgen_fb93a734836cbe22 :: + 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:606:5@ + +__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_fb93a734836cbe22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_466ec7ff0067a357" hs_bindgen_466ec7ff0067a357 :: + 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:611: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_466ec7ff0067a357 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_97b4ae6681491fa8" hs_bindgen_97b4ae6681491fa8 :: + 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:621:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_97b4ae6681491fa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_b48568c46289031a" hs_bindgen_b48568c46289031a :: + 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:626: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_b48568c46289031a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_528745354739ba70" hs_bindgen_528745354739ba70 :: + 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:631: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_528745354739ba70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_2e8c1ebee5b3e16c" hs_bindgen_2e8c1ebee5b3e16c :: + 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_2e8c1ebee5b3e16c + +{-| + + 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:658: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_2e8c1ebee5b3e16c x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_68359bf960d9e2df" hs_bindgen_68359bf960d9e2df :: + 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:670:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_68359bf960d9e2df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_1bec295572fb738a" hs_bindgen_1bec295572fb738a :: + 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:676:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_1bec295572fb738a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_0061d180203570c3" hs_bindgen_0061d180203570c3 :: + 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_0061d180203570c3 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:695: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_0061d180203570c3 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_a101e23d2e29c1a6" hs_bindgen_a101e23d2e29c1a6 :: + 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_a101e23d2e29c1a6 + +{-| 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:728: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_a101e23d2e29c1a6 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_e135ae73d130268e" hs_bindgen_e135ae73d130268e :: + 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_e135ae73d130268e + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:752: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_e135ae73d130268e x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_2b61b9b5241b7b75" hs_bindgen_2b61b9b5241b7b75 :: + 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_2b61b9b5241b7b75 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:779: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_2b61b9b5241b7b75 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_f2a94a87226de491" hs_bindgen_f2a94a87226de491 :: + 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_f2a94a87226de491 + +{-| 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:798: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_f2a94a87226de491 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_762d28d41f048caa" hs_bindgen_762d28d41f048caa :: + 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_762d28d41f048caa + +{-| 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:821: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_762d28d41f048caa 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_6_1_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_9c03bec885e60359" hs_bindgen_9c03bec885e60359 :: + 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:839: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_9c03bec885e60359 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_44a843674b044e28" hs_bindgen_44a843674b044e28 :: + 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:845: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_44a843674b044e28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_3df1d2c302d44e6a" hs_bindgen_3df1d2c302d44e6a :: + 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:851: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_3df1d2c302d44e6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_dc5004c8fb26485d" hs_bindgen_dc5004c8fb26485d :: + 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_dc5004c8fb26485d + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:856: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_dc5004c8fb26485d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_4042108e962370f2" hs_bindgen_4042108e962370f2 :: + 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:862: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_4042108e962370f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_d957d5f6d2615c99" hs_bindgen_d957d5f6d2615c99 :: + 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_d957d5f6d2615c99 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:868: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_d957d5f6d2615c99 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_138f537eedfd39f6" hs_bindgen_138f537eedfd39f6 :: + 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_138f537eedfd39f6 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:874: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_138f537eedfd39f6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_8ba9022b30c24058" hs_bindgen_8ba9022b30c24058 :: + 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:882: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_8ba9022b30c24058 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_202e191a6bfb1ca1" hs_bindgen_202e191a6bfb1ca1 :: + 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:892: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_202e191a6bfb1ca1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_cd90228a8d5857d8" hs_bindgen_cd90228a8d5857d8 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:905: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_cd90228a8d5857d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_b5f5a239b4701c52" hs_bindgen_b5f5a239b4701c52 :: + 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:911:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_b5f5a239b4701c52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_4e3aa960d50ef434" hs_bindgen_4e3aa960d50ef434 :: + 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:916: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_4e3aa960d50ef434 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_2c14236022950298" hs_bindgen_2c14236022950298 :: + 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:921:28@ + +__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_2c14236022950298 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_a416725401e3089d" hs_bindgen_a416725401e3089d :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_a416725401e3089d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_b91ceb64e82ed86e" hs_bindgen_b91ceb64e82ed86e :: + 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:931: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_b91ceb64e82ed86e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_1f169120045d7553" hs_bindgen_1f169120045d7553 :: + 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:936: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_1f169120045d7553 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_5c6b877b93eaed71" hs_bindgen_5c6b877b93eaed71 :: + 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:941: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_5c6b877b93eaed71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_00fe424c332fc1bc" hs_bindgen_00fe424c332fc1bc :: + 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:947: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_00fe424c332fc1bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_a6552b5dced6ebde" hs_bindgen_a6552b5dced6ebde :: + 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:952: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_a6552b5dced6ebde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_95ac4d00b39bed0e" hs_bindgen_95ac4d00b39bed0e :: + 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:957: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_95ac4d00b39bed0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_fa8fb7a1814cce50" hs_bindgen_fa8fb7a1814cce50 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:962: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_fa8fb7a1814cce50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_b3e36afce1a82e03" hs_bindgen_b3e36afce1a82e03 :: + 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_b3e36afce1a82e03 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:967: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_b3e36afce1a82e03 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_0885738c3b9f3c61" hs_bindgen_0885738c3b9f3c61 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:972: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_0885738c3b9f3c61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_50fd9fe4115161ed" hs_bindgen_50fd9fe4115161ed :: + 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:979: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_50fd9fe4115161ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_8e86ba2a2c99dbce" hs_bindgen_8e86ba2a2c99dbce :: + 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:984: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_8e86ba2a2c99dbce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_1d18c28f5ff109ea" hs_bindgen_1d18c28f5ff109ea :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:986: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_1d18c28f5ff109ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_5979b266b85c5742" hs_bindgen_5979b266b85c5742 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:988: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_5979b266b85c5742 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_86025864441025b4" hs_bindgen_86025864441025b4 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:990: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_86025864441025b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_761ec4e5e4edae99" hs_bindgen_761ec4e5e4edae99 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:991: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_761ec4e5e4edae99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_279187881336bb93" hs_bindgen_279187881336bb93 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:993: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_279187881336bb93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_6b65058e7ec08a27" hs_bindgen_6b65058e7ec08a27 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:994: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_6b65058e7ec08a27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_bbd604a6f90b1d0b" hs_bindgen_bbd604a6f90b1d0b :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:996: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_bbd604a6f90b1d0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_b98bf5be14607b5a" hs_bindgen_b98bf5be14607b5a :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:997: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_b98bf5be14607b5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_2d825b5d6b49bae3" hs_bindgen_2d825b5d6b49bae3 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:998: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_2d825b5d6b49bae3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_7710735b9e4fe3ba" hs_bindgen_7710735b9e4fe3ba :: + 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:1001: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_7710735b9e4fe3ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_4722796c26c0f7cf" hs_bindgen_4722796c26c0f7cf :: + 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:1004: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_4722796c26c0f7cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_d78171eaa0a3628b" hs_bindgen_d78171eaa0a3628b :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1011: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_d78171eaa0a3628b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_be9bb7d5cd81ab95" hs_bindgen_be9bb7d5cd81ab95 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1018: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_be9bb7d5cd81ab95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_2b54356e26c62149" hs_bindgen_2b54356e26c62149 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1023: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_2b54356e26c62149 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_52b4b8356456c7c0" hs_bindgen_52b4b8356456c7c0 :: + 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:1027: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_52b4b8356456c7c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_0b1d9e782a4d3414" hs_bindgen_0b1d9e782a4d3414 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1029: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_0b1d9e782a4d3414 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_beaa3d82fa41547d" hs_bindgen_beaa3d82fa41547d :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1030: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_beaa3d82fa41547d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_2d97a0cb3fd6c887" hs_bindgen_2d97a0cb3fd6c887 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1032: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_2d97a0cb3fd6c887 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_bd61b5708f649963" hs_bindgen_bd61b5708f649963 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1034: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_bd61b5708f649963 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_eeed289b1cf6e2cf" hs_bindgen_eeed289b1cf6e2cf :: + 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:1037: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_eeed289b1cf6e2cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_c8e53409fc507f19" hs_bindgen_c8e53409fc507f19 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1039: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_c8e53409fc507f19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_7af7fe2e44c74c4b" hs_bindgen_7af7fe2e44c74c4b :: + 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:1046: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_7af7fe2e44c74c4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_bc2d5f921fe4c7ce" hs_bindgen_bc2d5f921fe4c7ce :: + 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:1053: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_bc2d5f921fe4c7ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_1afa58b25602c70e" hs_bindgen_1afa58b25602c70e :: + 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:1058: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_1afa58b25602c70e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_1738b26442b9d14f" hs_bindgen_1738b26442b9d14f :: + 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:1063: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_1738b26442b9d14f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_27e991334a04f2f5" hs_bindgen_27e991334a04f2f5 :: + 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:1081: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_27e991334a04f2f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_ae43e4e7ef0a2ab5" hs_bindgen_ae43e4e7ef0a2ab5 :: + 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:1092: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_ae43e4e7ef0a2ab5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_393aedb61214a4b7" hs_bindgen_393aedb61214a4b7 :: + 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:1108: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_393aedb61214a4b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_0a35796a942e721e" hs_bindgen_0a35796a942e721e :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1112: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_0a35796a942e721e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_ed35ef12d8baf1b1" hs_bindgen_ed35ef12d8baf1b1 :: + 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:1115: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_ed35ef12d8baf1b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_476c91dd0ac82920" hs_bindgen_476c91dd0ac82920 :: + 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:1117: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_476c91dd0ac82920 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_26b930ef8a58f046" hs_bindgen_26b930ef8a58f046 :: + 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:1119: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_26b930ef8a58f046 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_f19eba37be7cef3c" hs_bindgen_f19eba37be7cef3c :: + 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:1121: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_f19eba37be7cef3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_be2f03f68bcae1cc" hs_bindgen_be2f03f68bcae1cc :: + 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:1123: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_be2f03f68bcae1cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_033ffd5e46e67c83" hs_bindgen_033ffd5e46e67c83 :: + 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:1143: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_033ffd5e46e67c83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_792103950934c078" hs_bindgen_792103950934c078 :: + 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:1165: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_792103950934c078 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_bbc6ef0ebf0c5b99" hs_bindgen_bbc6ef0ebf0c5b99 :: + 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_bbc6ef0ebf0c5b99 + +{-| 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:1173: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_bbc6ef0ebf0c5b99 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_a07998a438a8c842" hs_bindgen_a07998a438a8c842 :: + 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:1178:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_a07998a438a8c842 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_c8cd59c2df5b5d58" hs_bindgen_c8cd59c2df5b5d58 :: + 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:1191: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_c8cd59c2df5b5d58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_81593205095dabf5" hs_bindgen_81593205095dabf5 :: + 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:1196: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_81593205095dabf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_b31db71e76dad5d8" hs_bindgen_b31db71e76dad5d8 :: + 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:1201: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_b31db71e76dad5d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_cf905277cabaa71c" hs_bindgen_cf905277cabaa71c :: + 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:1206: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_cf905277cabaa71c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_ddd757d51c36b515" hs_bindgen_ddd757d51c36b515 :: + 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:1208: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_ddd757d51c36b515 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_41815dc37519169c" hs_bindgen_41815dc37519169c :: + 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:1215: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_41815dc37519169c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_c2aae71f6d397158" hs_bindgen_c2aae71f6d397158 :: + 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:1230: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_c2aae71f6d397158 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_c910ca337ce3fc37" hs_bindgen_c910ca337ce3fc37 :: + 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:1245: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_c910ca337ce3fc37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_3254302e499ba373" hs_bindgen_3254302e499ba373 :: + 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:1262: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_3254302e499ba373 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_5f22c01d5d1b39a2" hs_bindgen_5f22c01d5d1b39a2 :: + 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:1277: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_5f22c01d5d1b39a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_e8a27d8dee606d67" hs_bindgen_e8a27d8dee606d67 :: + 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:1293: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_e8a27d8dee606d67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_fb346095a5497e42" hs_bindgen_fb346095a5497e42 :: + 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:1308: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_fb346095a5497e42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_a03db0039f54fc21" hs_bindgen_a03db0039f54fc21 :: + 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_a03db0039f54fc21 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1319: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_a03db0039f54fc21 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_cc623a4626cbac9e" hs_bindgen_cc623a4626cbac9e :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1321: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_cc623a4626cbac9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_975d251ab7f3d327" hs_bindgen_975d251ab7f3d327 :: + 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:1323: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_975d251ab7f3d327 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_08bebfd11f135ad8" hs_bindgen_08bebfd11f135ad8 :: + 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:1328: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_08bebfd11f135ad8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_7a88727af52b1ef8" hs_bindgen_7a88727af52b1ef8 :: + 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:1333: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_7a88727af52b1ef8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_02351ca2c49052d3" hs_bindgen_02351ca2c49052d3 :: + 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:1338: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_02351ca2c49052d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_f38c2c9d98babced" hs_bindgen_f38c2c9d98babced :: + 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:1340: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_f38c2c9d98babced + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_72016c13d8a51505" hs_bindgen_72016c13d8a51505 :: + 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:1345: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_72016c13d8a51505 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_15a31ef24816a86a" hs_bindgen_15a31ef24816a86a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1347: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_15a31ef24816a86a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_34356db75aebeb30" hs_bindgen_34356db75aebeb30 :: + 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:1350: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_34356db75aebeb30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_a18e9a08b8e24095" hs_bindgen_a18e9a08b8e24095 :: + 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:1355:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_a18e9a08b8e24095 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_e755f7d9c0b25489" hs_bindgen_e755f7d9c0b25489 :: + 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:1360: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_e755f7d9c0b25489 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_b6b68e8074bef2b1" hs_bindgen_b6b68e8074bef2b1 :: + 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:1362: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_b6b68e8074bef2b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_9cceabe67b7e8929" hs_bindgen_9cceabe67b7e8929 :: + 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:1367: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_9cceabe67b7e8929 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_8b5f07e33b877d05" hs_bindgen_8b5f07e33b877d05 :: + 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_8b5f07e33b877d05 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1369: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_8b5f07e33b877d05 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_0d4526954da1beb1" hs_bindgen_0d4526954da1beb1 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1372: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_0d4526954da1beb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_4f2ea415bedaff0f" hs_bindgen_4f2ea415bedaff0f :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1374: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_4f2ea415bedaff0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_cb26e8367c636da2" hs_bindgen_cb26e8367c636da2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1376: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_cb26e8367c636da2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_05be25d17e8797f4" hs_bindgen_05be25d17e8797f4 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1378: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_05be25d17e8797f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_d8c04c3f37998bba" hs_bindgen_d8c04c3f37998bba :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1380: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_d8c04c3f37998bba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_375bf1eb12df8c15" hs_bindgen_375bf1eb12df8c15 :: + 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:1383: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_375bf1eb12df8c15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_89a0be04964e2feb" hs_bindgen_89a0be04964e2feb :: + 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:1385: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_89a0be04964e2feb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_344226635ef23adb" hs_bindgen_344226635ef23adb :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1388: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_344226635ef23adb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_03ca6fc2792dee8d" hs_bindgen_03ca6fc2792dee8d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1390: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_03ca6fc2792dee8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_c358818b8f89309f" hs_bindgen_c358818b8f89309f :: + 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:1396: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_c358818b8f89309f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_565665310da0985c" hs_bindgen_565665310da0985c :: + 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:1399: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_565665310da0985c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_b5d15c0c7d04a762" hs_bindgen_b5d15c0c7d04a762 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1402: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_b5d15c0c7d04a762 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_9fc26b6a7e824007" hs_bindgen_9fc26b6a7e824007 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1405: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_9fc26b6a7e824007 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_c57460e7cebdb73c" hs_bindgen_c57460e7cebdb73c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1407: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_c57460e7cebdb73c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_dfb0ebb05d92b61a" hs_bindgen_dfb0ebb05d92b61a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1409: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_dfb0ebb05d92b61a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_9a83abb12dfb365a" hs_bindgen_9a83abb12dfb365a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1411: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_9a83abb12dfb365a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_aecdcbb59f777b68" hs_bindgen_aecdcbb59f777b68 :: + 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:1426: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_aecdcbb59f777b68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_1c7eee11e12e5ffb" hs_bindgen_1c7eee11e12e5ffb :: + 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:1440: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_1c7eee11e12e5ffb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_c79ea0fc22756d89" hs_bindgen_c79ea0fc22756d89 :: + 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:1458: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_c79ea0fc22756d89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_00e214a73e04c6ca" hs_bindgen_00e214a73e04c6ca :: + 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:1473: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_00e214a73e04c6ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_a9adddc9cbbd1ae3" hs_bindgen_a9adddc9cbbd1ae3 :: + 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_a9adddc9cbbd1ae3 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1479: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_a9adddc9cbbd1ae3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_216a4c025ca7976e" hs_bindgen_216a4c025ca7976e :: + 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_216a4c025ca7976e + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_216a4c025ca7976e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_5b2408e913aac3f2" hs_bindgen_5b2408e913aac3f2 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1483: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_5b2408e913aac3f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_2b11b5faaecf23dd" hs_bindgen_2b11b5faaecf23dd :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1485: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_2b11b5faaecf23dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_fc9eca7a4acf8254" hs_bindgen_fc9eca7a4acf8254 :: + 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_fc9eca7a4acf8254 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1491: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_fc9eca7a4acf8254 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_d0d2c70e85a6e79f" hs_bindgen_d0d2c70e85a6e79f :: + 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_d0d2c70e85a6e79f + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_d0d2c70e85a6e79f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_a32983d46427ad3c" hs_bindgen_a32983d46427ad3c :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1495: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_a32983d46427ad3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_99acc137bf7b6521" hs_bindgen_99acc137bf7b6521 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1497: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_99acc137bf7b6521 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_d2b6cad8912e972c" hs_bindgen_d2b6cad8912e972c :: + 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_d2b6cad8912e972c + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1503: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_d2b6cad8912e972c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_7894f98d18571dfe" hs_bindgen_7894f98d18571dfe :: + 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_7894f98d18571dfe + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_7894f98d18571dfe x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_9ca92442da7b9871" hs_bindgen_9ca92442da7b9871 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1507: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_9ca92442da7b9871 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_40ed55fabe283b15" hs_bindgen_40ed55fabe283b15 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1509: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_40ed55fabe283b15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_6ccc96bccf79ef80" hs_bindgen_6ccc96bccf79ef80 :: + 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_6ccc96bccf79ef80 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1515: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_6ccc96bccf79ef80 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_478ac631f83bb33f" hs_bindgen_478ac631f83bb33f :: + 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_478ac631f83bb33f + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_478ac631f83bb33f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_3a2182b59b1d2b8d" hs_bindgen_3a2182b59b1d2b8d :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1519: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_3a2182b59b1d2b8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_05960b494be45e39" hs_bindgen_05960b494be45e39 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1521: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_05960b494be45e39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_3881b962ab226979" hs_bindgen_3881b962ab226979 :: + 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_3881b962ab226979 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1528: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_3881b962ab226979 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_7c88f068f78992d7" hs_bindgen_7c88f068f78992d7 :: + 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_7c88f068f78992d7 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1531: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_7c88f068f78992d7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_5b07dd4988bdc9eb" hs_bindgen_5b07dd4988bdc9eb :: + 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_5b07dd4988bdc9eb + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1537: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_5b07dd4988bdc9eb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_78b6cf4035118262" hs_bindgen_78b6cf4035118262 :: + 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_78b6cf4035118262 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_78b6cf4035118262 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_f5fe7f3e8d44f547" hs_bindgen_f5fe7f3e8d44f547 :: + 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:1543: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_f5fe7f3e8d44f547 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_de38e1678fb9afb9" hs_bindgen_de38e1678fb9afb9 :: + 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:1547: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_de38e1678fb9afb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_7ec2b812b0b2b97b" hs_bindgen_7ec2b812b0b2b97b :: + 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_7ec2b812b0b2b97b + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1554: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_7ec2b812b0b2b97b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_906499e9f3c9c37b" hs_bindgen_906499e9f3c9c37b :: + 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_906499e9f3c9c37b + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1557: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_906499e9f3c9c37b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_71771e1747322eb6" hs_bindgen_71771e1747322eb6 :: + 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_71771e1747322eb6 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1564: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_71771e1747322eb6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_68ecf9b1661747cf" hs_bindgen_68ecf9b1661747cf :: + 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_68ecf9b1661747cf + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1567: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_68ecf9b1661747cf x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_57f10ccede8f1f76" hs_bindgen_57f10ccede8f1f76 :: + 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_57f10ccede8f1f76 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1574: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_57f10ccede8f1f76 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_d741a11bf91064f3" hs_bindgen_d741a11bf91064f3 :: + 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_d741a11bf91064f3 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1577: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_d741a11bf91064f3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_203af135796dd314" hs_bindgen_203af135796dd314 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1583: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_203af135796dd314 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_e89e640bac4e2000" hs_bindgen_e89e640bac4e2000 :: + 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:1586: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_e89e640bac4e2000 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_0db97559249d59ea" hs_bindgen_0db97559249d59ea :: + 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:1589: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_0db97559249d59ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_2ac86a2b7151eafd" hs_bindgen_2ac86a2b7151eafd :: + 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:1592: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_2ac86a2b7151eafd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_bd8e3e70acb318d2" hs_bindgen_bd8e3e70acb318d2 :: + 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:1595: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_bd8e3e70acb318d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_a5d5664e0e312936" hs_bindgen_a5d5664e0e312936 :: + 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:1598: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_a5d5664e0e312936 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_216a7c89ef50115a" hs_bindgen_216a7c89ef50115a :: + 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:1601: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_216a7c89ef50115a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_81e26a27068e0113" hs_bindgen_81e26a27068e0113 :: + 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:1605: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_81e26a27068e0113 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_012fec17f6203aab" hs_bindgen_012fec17f6203aab :: + 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:1609: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_012fec17f6203aab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_f393c2d2f0f000ff" hs_bindgen_f393c2d2f0f000ff :: + 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:1612: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_f393c2d2f0f000ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_fdec014ebbf28bc9" hs_bindgen_fdec014ebbf28bc9 :: + 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:1619: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_fdec014ebbf28bc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_7dd73f5527262c44" hs_bindgen_7dd73f5527262c44 :: + 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:1627: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_7dd73f5527262c44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_5d9f60ee09afd424" hs_bindgen_5d9f60ee09afd424 :: + 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:1632: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_5d9f60ee09afd424 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_2b0064eb945e52eb" hs_bindgen_2b0064eb945e52eb :: + 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:1635: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_2b0064eb945e52eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_413dde9ff9b1019f" hs_bindgen_413dde9ff9b1019f :: + 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_413dde9ff9b1019f + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1638: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_413dde9ff9b1019f x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_5839fab41e207003" hs_bindgen_5839fab41e207003 :: + 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:1651: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_5839fab41e207003 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_464c8f90bbc5a932" hs_bindgen_464c8f90bbc5a932 :: + 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:1656: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_464c8f90bbc5a932 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_769249a31f092818" hs_bindgen_769249a31f092818 :: + 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:1659: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_769249a31f092818 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_1b124e52fb941b9b" hs_bindgen_1b124e52fb941b9b :: + 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_1b124e52fb941b9b + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1662: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_1b124e52fb941b9b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_727a2013b8a9266f" hs_bindgen_727a2013b8a9266f :: + 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:1674: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_727a2013b8a9266f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_7ab6c8092583f10a" hs_bindgen_7ab6c8092583f10a :: + 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:1679: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_7ab6c8092583f10a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_cd93db859c1e0c8b" hs_bindgen_cd93db859c1e0c8b :: + 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:1681: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_cd93db859c1e0c8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_176820958e90d2f8" hs_bindgen_176820958e90d2f8 :: + 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_176820958e90d2f8 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1683: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_176820958e90d2f8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_6f87555de08cf02e" hs_bindgen_6f87555de08cf02e :: + 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:1686: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_6f87555de08cf02e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_09dd9b636ca64354" hs_bindgen_09dd9b636ca64354 :: + 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:1694: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_09dd9b636ca64354 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_0aebe390b9b6ddad" hs_bindgen_0aebe390b9b6ddad :: + 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:1702: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_0aebe390b9b6ddad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_b2fb940cd781bb9e" hs_bindgen_b2fb940cd781bb9e :: + 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_b2fb940cd781bb9e + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1704: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_b2fb940cd781bb9e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_d09df154e99c351c" hs_bindgen_d09df154e99c351c :: + 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_d09df154e99c351c + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1705: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_d09df154e99c351c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_038a2cd2d6b84cb2" hs_bindgen_038a2cd2d6b84cb2 :: + 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:1713: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_038a2cd2d6b84cb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_ec8b1bc311c1d2dd" hs_bindgen_ec8b1bc311c1d2dd :: + 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:1718: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_ec8b1bc311c1d2dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_24a3cdda594524da" hs_bindgen_24a3cdda594524da :: + 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:1720: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_24a3cdda594524da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_331d41be41c3eb68" hs_bindgen_331d41be41c3eb68 :: + 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:1723: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_331d41be41c3eb68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_6221bf7de1ad17ad" hs_bindgen_6221bf7de1ad17ad :: + 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:1725: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_6221bf7de1ad17ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_2a7d30ec765e7601" hs_bindgen_2a7d30ec765e7601 :: + 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_2a7d30ec765e7601 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1728: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_2a7d30ec765e7601 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_3daf49a8c6440f15" hs_bindgen_3daf49a8c6440f15 :: + 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:1742: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_3daf49a8c6440f15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_5937ad125a8afafb" hs_bindgen_5937ad125a8afafb :: + 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:1747: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_5937ad125a8afafb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_77e2ae27ee1f092e" hs_bindgen_77e2ae27ee1f092e :: + 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:1750: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_77e2ae27ee1f092e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_592aa98a5025e01d" hs_bindgen_592aa98a5025e01d :: + 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:1755: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_592aa98a5025e01d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_92cde48eb058e392" hs_bindgen_92cde48eb058e392 :: + 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_92cde48eb058e392 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1759: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_92cde48eb058e392 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_ae8f596aca64e0e3" hs_bindgen_ae8f596aca64e0e3 :: + 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:1772: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_ae8f596aca64e0e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_0ef5c9120c2884ed" hs_bindgen_0ef5c9120c2884ed :: + 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:1777: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_0ef5c9120c2884ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_5d29c3541f8c069b" hs_bindgen_5d29c3541f8c069b :: + 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:1780: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_5d29c3541f8c069b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_342ba8978e58d1c6" hs_bindgen_342ba8978e58d1c6 :: + 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_342ba8978e58d1c6 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1785: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_342ba8978e58d1c6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_c11ce2488558650f" hs_bindgen_c11ce2488558650f :: + 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:1798: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_c11ce2488558650f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_93cc2a9648a12485" hs_bindgen_93cc2a9648a12485 :: + 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_93cc2a9648a12485 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1805: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_93cc2a9648a12485 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_2614fc57ed6e2cce" hs_bindgen_2614fc57ed6e2cce :: + 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_2614fc57ed6e2cce + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1820: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_2614fc57ed6e2cce x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_3fcbe32717952153" hs_bindgen_3fcbe32717952153 :: + 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_3fcbe32717952153 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1835: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_3fcbe32717952153 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_a4165cbe53be976b" hs_bindgen_a4165cbe53be976b :: + 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:1836: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_a4165cbe53be976b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_8e2deb98899b846a" hs_bindgen_8e2deb98899b846a :: + 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:1841: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_8e2deb98899b846a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_bf0a3c95b6fe88a9" hs_bindgen_bf0a3c95b6fe88a9 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1843: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_bf0a3c95b6fe88a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_b8b4ec3af2b52917" hs_bindgen_b8b4ec3af2b52917 :: + 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:1846: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_b8b4ec3af2b52917 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_dba5d03835c34c9e" hs_bindgen_dba5d03835c34c9e :: + 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:1847: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_dba5d03835c34c9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_a950d4a3934047cb" hs_bindgen_a950d4a3934047cb :: + 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:1849: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_a950d4a3934047cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_5fd794ba34cb57e5" hs_bindgen_5fd794ba34cb57e5 :: + 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:1850: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_5fd794ba34cb57e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_a45182d7521f1262" hs_bindgen_a45182d7521f1262 :: + 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:1853: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_a45182d7521f1262 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_c5eca6d226b41c9e" hs_bindgen_c5eca6d226b41c9e :: + 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:1855: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_c5eca6d226b41c9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_57328a022303d5ba" hs_bindgen_57328a022303d5ba :: + 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:1856: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_57328a022303d5ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_1210fef8f1f6f329" hs_bindgen_1210fef8f1f6f329 :: + 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:1857: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_1210fef8f1f6f329 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_96069a15f7facd51" hs_bindgen_96069a15f7facd51 :: + 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:1859: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_96069a15f7facd51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_f00bb93ce09094a3" hs_bindgen_f00bb93ce09094a3 :: + 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:1862: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_f00bb93ce09094a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_c04dfcc4288dc69d" hs_bindgen_c04dfcc4288dc69d :: + 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:1864: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_c04dfcc4288dc69d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_d4cfb8ff2e94b15b" hs_bindgen_d4cfb8ff2e94b15b :: + 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:1867: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_d4cfb8ff2e94b15b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_3dc57f0722753587" hs_bindgen_3dc57f0722753587 :: + 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:1871: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_3dc57f0722753587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_9ca30b0f413109a6" hs_bindgen_9ca30b0f413109a6 :: + 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:1874: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_9ca30b0f413109a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_5faa07539c7fd4e4" hs_bindgen_5faa07539c7fd4e4 :: + 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:1877: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_5faa07539c7fd4e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_12f0e6ab596e043b" hs_bindgen_12f0e6ab596e043b :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1893: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_12f0e6ab596e043b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_ee372a5ff89b0280" hs_bindgen_ee372a5ff89b0280 :: + 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:1899: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_ee372a5ff89b0280 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_a43cc65536242b28" hs_bindgen_a43cc65536242b28 :: + 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:1910: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_a43cc65536242b28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_0de477655965b23f" hs_bindgen_0de477655965b23f :: + 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:1925: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_0de477655965b23f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_04c5d402e2351d30" hs_bindgen_04c5d402e2351d30 :: + 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:1933: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_04c5d402e2351d30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_f3a7d2689a042667" hs_bindgen_f3a7d2689a042667 :: + 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_f3a7d2689a042667 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1935: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_f3a7d2689a042667 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_67ce2504227ee9d9" hs_bindgen_67ce2504227ee9d9 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1937: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_67ce2504227ee9d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_c5e88f5bbd2c5e04" hs_bindgen_c5e88f5bbd2c5e04 :: + 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:1943: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_c5e88f5bbd2c5e04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_94c2eb6484906235" hs_bindgen_94c2eb6484906235 :: + 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:1950: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_94c2eb6484906235 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_b313d31dfcba07d4" hs_bindgen_b313d31dfcba07d4 :: + 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_b313d31dfcba07d4 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1968: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_b313d31dfcba07d4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_284c4d2ad98760a2" hs_bindgen_284c4d2ad98760a2 :: + 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_284c4d2ad98760a2 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1977: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_284c4d2ad98760a2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_8c0980c3a09d819e" hs_bindgen_8c0980c3a09d819e :: + 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_8c0980c3a09d819e + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1985: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_8c0980c3a09d819e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_b83077907a73fcbf" hs_bindgen_b83077907a73fcbf :: + 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_b83077907a73fcbf + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1995: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_b83077907a73fcbf x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_4a16968b0c9decfd" hs_bindgen_4a16968b0c9decfd :: + 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_4a16968b0c9decfd + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2014: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_4a16968b0c9decfd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_b1365150434bfd33" hs_bindgen_b1365150434bfd33 :: + 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:2021:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_b1365150434bfd33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_bf09acabe357b264" hs_bindgen_bf09acabe357b264 :: + 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:2027: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_bf09acabe357b264 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_3d2c9d7ecefa461c" hs_bindgen_3d2c9d7ecefa461c :: + 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:2033: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_3d2c9d7ecefa461c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_4a3b55264eb1988c" hs_bindgen_4a3b55264eb1988c :: + 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_4a3b55264eb1988c + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2046: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_4a3b55264eb1988c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_335056c3b61aee48" hs_bindgen_335056c3b61aee48 :: + 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:2054:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_335056c3b61aee48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_0cb53ffb146cd8d8" hs_bindgen_0cb53ffb146cd8d8 :: + 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:2063: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_0cb53ffb146cd8d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_f1c4c817c7abd15d" hs_bindgen_f1c4c817c7abd15d :: + 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:2074: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_f1c4c817c7abd15d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_31ae55fcd30e8523" hs_bindgen_31ae55fcd30e8523 :: + 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_31ae55fcd30e8523 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2085: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_31ae55fcd30e8523 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_a52b1ee2c33e7768" hs_bindgen_a52b1ee2c33e7768 :: + 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:2092:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_a52b1ee2c33e7768 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_fc7715b99ad352f0" hs_bindgen_fc7715b99ad352f0 :: + 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_fc7715b99ad352f0 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2095: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_fc7715b99ad352f0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_bcd940dd2e80e558" hs_bindgen_bcd940dd2e80e558 :: + 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_bcd940dd2e80e558 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2098: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_bcd940dd2e80e558 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_169c624cda968fe5" hs_bindgen_169c624cda968fe5 :: + 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:2110: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_169c624cda968fe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_a5e94855f4d3009e" hs_bindgen_a5e94855f4d3009e :: + 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:2118: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_a5e94855f4d3009e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_083c5dbc3449aa06" hs_bindgen_083c5dbc3449aa06 :: + 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_083c5dbc3449aa06 + +{-| 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:2133: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_083c5dbc3449aa06 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_30e5fcc347faf23c" hs_bindgen_30e5fcc347faf23c :: + 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_30e5fcc347faf23c + +{-| 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:2152: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_30e5fcc347faf23c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_90a4520ff59cb37b" hs_bindgen_90a4520ff59cb37b :: + 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_90a4520ff59cb37b + +{-| 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:2168: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_90a4520ff59cb37b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_8bca5d4f34f4a248" hs_bindgen_8bca5d4f34f4a248 :: + 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_8bca5d4f34f4a248 + +{-| 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:2195: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_8bca5d4f34f4a248 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_6_1_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_56d11a31a23fa1fb" hs_bindgen_56d11a31a23fa1fb :: + 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:2213: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_56d11a31a23fa1fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_7e86b05b7680cf0c" hs_bindgen_7e86b05b7680cf0c :: + 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:2234: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_7e86b05b7680cf0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_47c611708953ecb4" hs_bindgen_47c611708953ecb4 :: + 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:2255: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_47c611708953ecb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_37007a60b7414420" hs_bindgen_37007a60b7414420 :: + 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:2273:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_37007a60b7414420 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_7862fded0e0c9a51" hs_bindgen_7862fded0e0c9a51 :: + 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:2281: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_7862fded0e0c9a51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_47bb6d98ab528577" hs_bindgen_47bb6d98ab528577 :: + 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:2291: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_47bb6d98ab528577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_92d96ce45e505c99" hs_bindgen_92d96ce45e505c99 :: + 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:2303: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_92d96ce45e505c99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_aa9df3e65a8a7e82" hs_bindgen_aa9df3e65a8a7e82 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2310: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_aa9df3e65a8a7e82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_34d9bbd20ca34412" hs_bindgen_34d9bbd20ca34412 :: + 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:2321: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_34d9bbd20ca34412 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_a6769e21392c660c" hs_bindgen_a6769e21392c660c :: + 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:2333: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_a6769e21392c660c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_ba41ba2521b07ff1" hs_bindgen_ba41ba2521b07ff1 :: + 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:2340: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_ba41ba2521b07ff1 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/Unsafe.hs new file mode 100644 index 00000000..55cbdfac --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_6_1/Unsafe.hs @@ -0,0 +1,13480 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_6_1.Unsafe where + +import Botan.Bindings.Generated.Botan_3_6_1 +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_2bca1e6b1c6d2efd (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_31cdc80f1bca1905 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_fd5408f7a2a9c87b (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_b7600cfd60c59002 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_b155163a4535cfe0 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_807bdef7f5e1e4f4 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_f076e15c8648e530 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_64a1d1e17168f8cd (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_ae466e45c08a6add (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_b52033e09ff0a577 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7788c0ec39190ba2 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7ed0676c5b068e0b (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_10677b41fc0ae264 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_47922d2b33588b5f (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b13ada5e3a627e86 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8cd9fe2b08739887 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7f72250983b42ad8 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39473c1c1779fb1b (" + , " 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_7fd91eb62347a4f8 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0491a606782676c4 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b34b2dad4e304810 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_54c3add5ddf58dbd (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f3319cee15dd4989 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5353051333dd62f0 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_edc31496648c79fa (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_90411d9366d14ecd (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9020a2acdfbe781b (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4dc8d2be23da1e51 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b0a6f46cfe8d413b (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2528e22228b7e74b (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_001a28eeee7e48c3 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_87640f6149aa85ba (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_55213f200e5933b4 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ec650fc99235c68 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c38fb4f0deaf3b92 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_144d5aaa19ec7025 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c44f267717f0ea01 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f7578e32fb02f97 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9775a0ebab318352 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f7591c4e85057388 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_a06c531b815717bd (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_26e556925128d90c (" + , " 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_cf87f8442a6adb8b (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_66ce59329e605044 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_16e04e0d194453f6 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8393882ebe80466e (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1a6cbf01c8f9d3d7 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6f5364a95087a5a (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ce7284d0ce27678 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_e2927bec667a3edb (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_46b7a8de4d56680a (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_31353da92e71fa18 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dd977da647de784b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a454fedfaaa88cf0 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_24d4f804c3c13600 (" + , " 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_b1451f0ae6494146 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2db46fa32d21d096 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_774051e562198590 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc330638a22ad773 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_996d3c6821c81c12 (" + , " 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_0693be39d1d46488 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_11fdc8d6d322a6c0 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_52317198969f9a9f (" + , " 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_ebc753c73a26d689 (" + , " 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_a42e0a792146ac26 (" + , " 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_9635f876b826cfed (" + , " 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_ac988fd40128c1fb (" + , " 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_eb3eea687b4a51ea (" + , " 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_0e7496f8d2b97144 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f69aa3beb2d5e7b2 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c6b2c1e2534bd32c (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_41f27b3ecac14254 (" + , " 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_e4f6ed034016495f (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_f76aeba574fb9f29 (" + , " 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_18d4b335f6bef240 (" + , " 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_87e285d7f934a770 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_38f46dc09fe9af9d (" + , " 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_c85c9fa6509e164c (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_f31fa7b33523cbc4 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_99ba932bf1a1758c (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e771cd0b641956fc (" + , " 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_d350919b285211ee (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_9586688885dd43fe (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_75dd8e4965835ddf (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a4d8143b980e770c (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a97942c51ea5c2ab (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c219aaaca89cb4aa (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5707390f79ef6f6f (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c0a5a5655362e2c0 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a616e92649035706 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5e2077df40fd100 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79ad008d47df4017 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_22bd446a085a9d57 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_ef98a849655b9317 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_0cd078990987a128 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_a41fef8ed830dd51 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_0cd4174e18a61a45 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_9cb88553db537389 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e69bed2a043b969c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7d277b11898afc51 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2e951e0ed158cc5 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23c06b9c1045ec35 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0c51c1a8b91928fb (" + , " 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_4c3d5dc334ed7462 (" + , " 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_1605a5ba77e61e8f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34bc0b9c09eca11c (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4b87ef713ca43471 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_48f665b07ff5a057 (" + , " 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_51b39d2bce7a7e06 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f4e17602faaedb4b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_246df78c31623867 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_885bb9e6caa87b50 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_370440c680deecba (" + , " 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_9691bfbf7692c07c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e3bc2222a6e04ed1 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cbe080831f3aacc0 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d42e3e224f485ba4 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bbdaeed7d13688ef (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b8616f1396e9b95 (" + , " 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_33042f85a6c3eb0e (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d0e747c5496739d (" + , " 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_b01449b19356c694 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ab3871bd3d16568 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_10c53b9148c0b5e6 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3a39dcc8b6d1b3ee (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_917aa45116cd0d5b (" + , " 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_e47f0acea4ce8b45 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_767b01c8a51e9605 (" + , " 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_24ab6b8d7b1fa7d6 (" + , " 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_66eb63ffc2f920c8 (" + , " 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_5f11841085b77f49 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8515a374b6c553f8 (" + , " 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_d99a96f49cd06abf (" + , " 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_055914bdd0d2692c (" + , " 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_7bb85e8df4ac2944 (" + , " 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_611d103c9c843ac1 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3b9b1ade9b6b2569 (" + , " 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_716dd53cd2883377 (" + , " 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_7f9ebf07f20bd985 (" + , " 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_8c1f48123006b6f3 (" + , " 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_877846e890aab9e3 (" + , " 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_599599b77fc27a5c (" + , " 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_f73d53a570fbecbe (" + , " 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_25cbf1879244d3d8 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f88bb7799b3682da (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f9c49b2753b308a (" + , " 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_eb5fe2d92a94815b (" + , " 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_86f4b4e89dc4fcc1 (" + , " 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_1116566814500417 (" + , " 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_7817805d15b5922c (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6127d12994bd5136 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b14ed3b95fd6809c (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eca4465a3dc7eb1b (" + , " 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_66af9b374fa8c2fe (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_44cb8e442c4eaf33 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53254cd993a03127 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5a4d8d296dd21f8a (" + , " 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_f38b1f1ac3ed4ecd (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d64c3cb01be0b56b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9c07975833b8f1b6 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1b8e70fd4365652d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8dde78906a42ba7e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a300d47192df2c14 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_adec1b81206ddfbc (" + , " 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_64e259dcabf3ff6f (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9878ef3a04fd67d4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ec3c104f6cab6d4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_db09c83ebda34796 (" + , " 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_61cbb76a8a62dcc4 (" + , " 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_da007b2e97af1c40 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c64dfd6dc1b2ecfb (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_af73631123991645 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_088fba1cdefdbb7f (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_71738171ee51ef58 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_56f394968ede8d5e (" + , " 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_cbde0a670c2bdf69 (" + , " 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_25fdae6861afa7ec (" + , " 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_4a39a667018234bb (" + , " 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_78069bf777ab7d43 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1083f631ee250751 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3264667256f98e69 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_89866a21e528c6de (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1da21a3b70058c6 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c139c525cf7f8cb0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_35ad83c1bdb433fb (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8e39dce20c432ef6 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fe84d8b120c7ac03 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_612229832d19e253 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5d392c8bfeb5191d (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_056fb9d331fdb1ac (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4b57dc38cd4d151c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_836766cde244a224 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7c7ebc5675ba4012 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_67fa8ba424269133 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_31a648358d61373b (" + , " 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_92c7db28852dd301 (" + , " 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_ad25675b7404380b (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_edb4f2cbada41033 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f8eba7534cef7c9f (" + , " 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_48efa958e68f59d3 (" + , " 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_1a13914519307466 (" + , " 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_41101487dd014721 (" + , " 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_b1871af99727d9bc (" + , " 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_732259e7add0d22c (" + , " 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_6aca77a4e81373ea (" + , " 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_a1a4e2249cdd60b4 (" + , " 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_0a8b63c59f7ec018 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_b05c03b3832bfced (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_216eeb28ad7ff1fc (" + , " 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_4f2994730e96c0a5 (" + , " 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_39f629f1f2b84e83 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_21825781093bbd83 (" + , " 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_9cc25da66081ecc7 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9db7154d8f54c743 (" + , " 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_71c2a31edf22765f (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_acf2229b5773c8f1 (" + , " 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_d3cd73a2c618a718 (" + , " 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_73ae37480fbd40a2 (" + , " 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_1722f64d2cf71d09 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2814e4bf4a5c490f (" + , " 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_dc8f0ded04cbf2d0 (" + , " 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_7297d82debbf5b4e (" + , " 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_9f345e8692f869eb (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d194807f9acb3e81 (" + , " 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_d4d6437ee2e2ea58 (" + , " 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_9f1c0b096ae69bf5 (" + , " 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_0161d9ea81f10692 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_78bfd8ef83e9ce4d (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0bf1596dd7323eda (" + , " 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_c91da81a96fe535b (" + , " 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_a94dcde85be0b2a1 (" + , " 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_d3fe80dbb9269396 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6692ef7e1ad5068f (" + , " 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_7786706b56503355 (" + , " 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_36e90ea4e826ca2f (" + , " 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_10b5e2678ea1dbe5 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2709c52c93b913ae (" + , " 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_0978c24d79e9734b (" + , " 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_f7420d094eb3df1f (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3fdc80b80c6da455 (" + , " 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_88edde447ebe645e (" + , " 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_33a70ec97f0243c8 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_98046bfaaad42fbb (" + , " 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_031cb8cd21836d2e (" + , " 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_92ef17434322522c (" + , " 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_298b053ac920c01f (" + , " 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_3a4c7e90bfb6ff35 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_91d0955ab357e2aa (" + , " 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_b02b74a131f1903d (" + , " 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_99d2868eb6375c69 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4931f80c5dc53c71 (" + , " 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_d6eb16691c3172d0 (" + , " 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_bebe7ece88858469 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_689d583fbdb84caa (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_26cd62a4b4ab47a5 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_81bf798fbe0648b6 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_82d8ebe66174c447 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a5b180548cfd8e76 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfae62f58ed16d22 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d5b1d6a84870773f (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_150c534a3c0947bc (" + , " 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_344f4d6e18226d1e (" + , " 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_a93f8fe4e44b29b0 (" + , " 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_91366349577e7a34 (" + , " 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_4385de35c0312f67 (" + , " 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_4af3727ce50f2354 (" + , " 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_4655f18c192fcf62 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_682164e098dbf532 (" + , " 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_786e89168508015f (" + , " 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_19e0ddb2a49236b1 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ab5189f2dc604fab (" + , " 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_b8c16ec083adfcbc (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_052208e72724d178 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f663671f4078453c (" + , " 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_f26498062f694c0e (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_95ef41c154f84dd0 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11763f3b357ff4de (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_249ee3f583f7e8cd (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d90c0c18004e1316 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_996140da5ae3de55 (" + , " 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_a66a2720c4d2ec73 (" + , " 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_3b36e18edadb0dd5 (" + , " 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_44f4b3bff7a9fdbd (" + , " 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_1ab8df56c5adfd07 (" + , " 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_4dba34b7f4a3a7b1 (" + , " 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_4fd2204f598ed93b (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e2d39dc9ae84e2c2 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_79ae45e6422ec79f (" + , " 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_b161f874eec33bb1 (" + , " 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_5af4b8569a82641d (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_63020bfcc1d98236 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_df08ad4e8be5c5fa (" + , " 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_9b8b7427e84bae56 (" + , " 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_09003f47504f74e0 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_68749bd71ae711ed (" + , " 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_39a6e42d6bbb3b5d (" + , " 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_767c0ec71ac39d7f (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_4033f1b157526ae4 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7486de9cd625168b (" + , " 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_24aa01ea9bb8d62b (" + , " 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_d849c828a68d7b51 (" + , " 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_0d3d263c5f280e01 (" + , " 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_05e8bd30c9cc30e3 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_569d513a44b7cb0d (" + , " 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_07aa22c30172f107 (" + , " 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_a774f23cdb06a034 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_9f6e4e4c6ca6d751 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_acfc8fe205001b97 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_096d997fdc290582 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1eaaf98b67d6a523 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_df2b850bc6cec6cf (" + , " 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_207ecf0be5aa2233 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_298b7adc66ae3ee1 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_2bca1e6b1c6d2efd" hs_bindgen_2bca1e6b1c6d2efd :: + 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:170: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_2bca1e6b1c6d2efd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_31cdc80f1bca1905" hs_bindgen_31cdc80f1bca1905 :: + 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:179: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_31cdc80f1bca1905 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_fd5408f7a2a9c87b" hs_bindgen_fd5408f7a2a9c87b :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_fd5408f7a2a9c87b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_b7600cfd60c59002" hs_bindgen_b7600cfd60c59002 :: + 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:192: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_b7600cfd60c59002 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_b155163a4535cfe0" hs_bindgen_b155163a4535cfe0 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_b155163a4535cfe0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_807bdef7f5e1e4f4" hs_bindgen_807bdef7f5e1e4f4 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_807bdef7f5e1e4f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_f076e15c8648e530" hs_bindgen_f076e15c8648e530 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_f076e15c8648e530 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_64a1d1e17168f8cd" hs_bindgen_64a1d1e17168f8cd :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_64a1d1e17168f8cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_ae466e45c08a6add" hs_bindgen_ae466e45c08a6add :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_ae466e45c08a6add + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_b52033e09ff0a577" hs_bindgen_b52033e09ff0a577 :: + 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:223: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_b52033e09ff0a577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_7788c0ec39190ba2" hs_bindgen_7788c0ec39190ba2 :: + 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:229: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_7788c0ec39190ba2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_7ed0676c5b068e0b" hs_bindgen_7ed0676c5b068e0b :: + 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:235: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_7ed0676c5b068e0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_10677b41fc0ae264" hs_bindgen_10677b41fc0ae264 :: + 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:247: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_10677b41fc0ae264 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_47922d2b33588b5f" hs_bindgen_47922d2b33588b5f :: + 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:257: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_47922d2b33588b5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_b13ada5e3a627e86" hs_bindgen_b13ada5e3a627e86 :: + 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:262:28@ + +__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_b13ada5e3a627e86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_8cd9fe2b08739887" hs_bindgen_8cd9fe2b08739887 :: + 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:267: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_8cd9fe2b08739887 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_7f72250983b42ad8" hs_bindgen_7f72250983b42ad8 :: + 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:284: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 "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_7f72250983b42ad8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_39473c1c1779fb1b" hs_bindgen_39473c1c1779fb1b :: + 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:296: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_39473c1c1779fb1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_7fd91eb62347a4f8" hs_bindgen_7fd91eb62347a4f8 :: + 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:310: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_7fd91eb62347a4f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_0491a606782676c4" hs_bindgen_0491a606782676c4 :: + 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:318: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_0491a606782676c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_b34b2dad4e304810" hs_bindgen_b34b2dad4e304810 :: + 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:328: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_b34b2dad4e304810 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_54c3add5ddf58dbd" hs_bindgen_54c3add5ddf58dbd :: + 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:338: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_54c3add5ddf58dbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_f3319cee15dd4989" hs_bindgen_f3319cee15dd4989 :: + 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:348: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_f3319cee15dd4989 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_5353051333dd62f0" hs_bindgen_5353051333dd62f0 :: + 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:355: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_5353051333dd62f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_edc31496648c79fa" hs_bindgen_edc31496648c79fa :: + 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:369: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_edc31496648c79fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_90411d9366d14ecd" hs_bindgen_90411d9366d14ecd :: + 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:377: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_90411d9366d14ecd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_9020a2acdfbe781b" hs_bindgen_9020a2acdfbe781b :: + 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:385: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_9020a2acdfbe781b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_4dc8d2be23da1e51" hs_bindgen_4dc8d2be23da1e51 :: + 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:393: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_4dc8d2be23da1e51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_b0a6f46cfe8d413b" hs_bindgen_b0a6f46cfe8d413b :: + 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:402: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_b0a6f46cfe8d413b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_2528e22228b7e74b" hs_bindgen_2528e22228b7e74b :: + 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:412: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_2528e22228b7e74b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_001a28eeee7e48c3" hs_bindgen_001a28eeee7e48c3 :: + 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:420: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_001a28eeee7e48c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_87640f6149aa85ba" hs_bindgen_87640f6149aa85ba :: + 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:427: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_87640f6149aa85ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_55213f200e5933b4" hs_bindgen_55213f200e5933b4 :: + 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:435: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_55213f200e5933b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_9ec650fc99235c68" hs_bindgen_9ec650fc99235c68 :: + 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:450: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_9ec650fc99235c68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_c38fb4f0deaf3b92" hs_bindgen_c38fb4f0deaf3b92 :: + 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:458: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_c38fb4f0deaf3b92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_144d5aaa19ec7025" hs_bindgen_144d5aaa19ec7025 :: + 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:467: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_144d5aaa19ec7025 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_c44f267717f0ea01" hs_bindgen_c44f267717f0ea01 :: + 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:476: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_c44f267717f0ea01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_7f7578e32fb02f97" hs_bindgen_7f7578e32fb02f97 :: + 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:485: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_7f7578e32fb02f97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_9775a0ebab318352" hs_bindgen_9775a0ebab318352 :: + 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:495: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_9775a0ebab318352 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_f7591c4e85057388" hs_bindgen_f7591c4e85057388 :: + 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:503: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_f7591c4e85057388 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_a06c531b815717bd" hs_bindgen_a06c531b815717bd :: + 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:511: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_a06c531b815717bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_26e556925128d90c" hs_bindgen_26e556925128d90c :: + 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:521: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_26e556925128d90c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_cf87f8442a6adb8b" hs_bindgen_cf87f8442a6adb8b :: + 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:531: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_cf87f8442a6adb8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_66ce59329e605044" hs_bindgen_66ce59329e605044 :: + 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:545: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_66ce59329e605044 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_16e04e0d194453f6" hs_bindgen_16e04e0d194453f6 :: + 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:550: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_16e04e0d194453f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_8393882ebe80466e" hs_bindgen_8393882ebe80466e :: + 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:555: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_8393882ebe80466e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_1a6cbf01c8f9d3d7" hs_bindgen_1a6cbf01c8f9d3d7 :: + 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:560: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_1a6cbf01c8f9d3d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_c6f5364a95087a5a" hs_bindgen_c6f5364a95087a5a :: + 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:565: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_c6f5364a95087a5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_4ce7284d0ce27678" hs_bindgen_4ce7284d0ce27678 :: + 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:570: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_4ce7284d0ce27678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_e2927bec667a3edb" hs_bindgen_e2927bec667a3edb :: + 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:577: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_e2927bec667a3edb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_46b7a8de4d56680a" hs_bindgen_46b7a8de4d56680a :: + 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:582: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_46b7a8de4d56680a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_31353da92e71fa18" hs_bindgen_31353da92e71fa18 :: + 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:588: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_31353da92e71fa18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_dd977da647de784b" hs_bindgen_dd977da647de784b :: + 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:594: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_dd977da647de784b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_a454fedfaaa88cf0" hs_bindgen_a454fedfaaa88cf0 :: + 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:600:5@ + +__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_a454fedfaaa88cf0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_24d4f804c3c13600" hs_bindgen_24d4f804c3c13600 :: + 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:606:5@ + +__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_24d4f804c3c13600 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_b1451f0ae6494146" hs_bindgen_b1451f0ae6494146 :: + 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:611: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_b1451f0ae6494146 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_2db46fa32d21d096" hs_bindgen_2db46fa32d21d096 :: + 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:621:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_2db46fa32d21d096 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_774051e562198590" hs_bindgen_774051e562198590 :: + 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:626: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_774051e562198590 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_cc330638a22ad773" hs_bindgen_cc330638a22ad773 :: + 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:631: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_cc330638a22ad773 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_996d3c6821c81c12" hs_bindgen_996d3c6821c81c12 :: + 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_996d3c6821c81c12 + +{-| + + 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:658: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_996d3c6821c81c12 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_0693be39d1d46488" hs_bindgen_0693be39d1d46488 :: + 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:670:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_0693be39d1d46488 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_11fdc8d6d322a6c0" hs_bindgen_11fdc8d6d322a6c0 :: + 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:676:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_11fdc8d6d322a6c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_52317198969f9a9f" hs_bindgen_52317198969f9a9f :: + 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_52317198969f9a9f + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:695: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_52317198969f9a9f x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_ebc753c73a26d689" hs_bindgen_ebc753c73a26d689 :: + 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_ebc753c73a26d689 + +{-| 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:728: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_ebc753c73a26d689 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_a42e0a792146ac26" hs_bindgen_a42e0a792146ac26 :: + 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_a42e0a792146ac26 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:752: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_a42e0a792146ac26 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_9635f876b826cfed" hs_bindgen_9635f876b826cfed :: + 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_9635f876b826cfed + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:779: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_9635f876b826cfed x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_ac988fd40128c1fb" hs_bindgen_ac988fd40128c1fb :: + 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_ac988fd40128c1fb + +{-| 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:798: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_ac988fd40128c1fb x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_eb3eea687b4a51ea" hs_bindgen_eb3eea687b4a51ea :: + 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_eb3eea687b4a51ea + +{-| 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:821: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_eb3eea687b4a51ea 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_6_1_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_0e7496f8d2b97144" hs_bindgen_0e7496f8d2b97144 :: + 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:839: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_0e7496f8d2b97144 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_f69aa3beb2d5e7b2" hs_bindgen_f69aa3beb2d5e7b2 :: + 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:845: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_f69aa3beb2d5e7b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_c6b2c1e2534bd32c" hs_bindgen_c6b2c1e2534bd32c :: + 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:851: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_c6b2c1e2534bd32c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_41f27b3ecac14254" hs_bindgen_41f27b3ecac14254 :: + 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_41f27b3ecac14254 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:856: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_41f27b3ecac14254 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_e4f6ed034016495f" hs_bindgen_e4f6ed034016495f :: + 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:862: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_e4f6ed034016495f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_f76aeba574fb9f29" hs_bindgen_f76aeba574fb9f29 :: + 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_f76aeba574fb9f29 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:868: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_f76aeba574fb9f29 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_18d4b335f6bef240" hs_bindgen_18d4b335f6bef240 :: + 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_18d4b335f6bef240 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:874: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_18d4b335f6bef240 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_87e285d7f934a770" hs_bindgen_87e285d7f934a770 :: + 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:882: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_87e285d7f934a770 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_38f46dc09fe9af9d" hs_bindgen_38f46dc09fe9af9d :: + 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:892: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_38f46dc09fe9af9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_c85c9fa6509e164c" hs_bindgen_c85c9fa6509e164c :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:905: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_c85c9fa6509e164c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_f31fa7b33523cbc4" hs_bindgen_f31fa7b33523cbc4 :: + 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:911:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_f31fa7b33523cbc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_99ba932bf1a1758c" hs_bindgen_99ba932bf1a1758c :: + 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:916: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_99ba932bf1a1758c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_e771cd0b641956fc" hs_bindgen_e771cd0b641956fc :: + 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:921:28@ + +__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_e771cd0b641956fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_d350919b285211ee" hs_bindgen_d350919b285211ee :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_d350919b285211ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_9586688885dd43fe" hs_bindgen_9586688885dd43fe :: + 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:931: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_9586688885dd43fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_75dd8e4965835ddf" hs_bindgen_75dd8e4965835ddf :: + 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:936: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_75dd8e4965835ddf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_a4d8143b980e770c" hs_bindgen_a4d8143b980e770c :: + 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:941: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_a4d8143b980e770c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_a97942c51ea5c2ab" hs_bindgen_a97942c51ea5c2ab :: + 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:947: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_a97942c51ea5c2ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_c219aaaca89cb4aa" hs_bindgen_c219aaaca89cb4aa :: + 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:952: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_c219aaaca89cb4aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_5707390f79ef6f6f" hs_bindgen_5707390f79ef6f6f :: + 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:957: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_5707390f79ef6f6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_c0a5a5655362e2c0" hs_bindgen_c0a5a5655362e2c0 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:962: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_c0a5a5655362e2c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_a616e92649035706" hs_bindgen_a616e92649035706 :: + 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_a616e92649035706 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:967: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_a616e92649035706 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_e5e2077df40fd100" hs_bindgen_e5e2077df40fd100 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:972: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_e5e2077df40fd100 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_79ad008d47df4017" hs_bindgen_79ad008d47df4017 :: + 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:979: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_79ad008d47df4017 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_22bd446a085a9d57" hs_bindgen_22bd446a085a9d57 :: + 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:984: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_22bd446a085a9d57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_ef98a849655b9317" hs_bindgen_ef98a849655b9317 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:986: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_ef98a849655b9317 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_0cd078990987a128" hs_bindgen_0cd078990987a128 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:988: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_0cd078990987a128 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_a41fef8ed830dd51" hs_bindgen_a41fef8ed830dd51 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:990: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_a41fef8ed830dd51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_0cd4174e18a61a45" hs_bindgen_0cd4174e18a61a45 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:991: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_0cd4174e18a61a45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_9cb88553db537389" hs_bindgen_9cb88553db537389 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:993: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_9cb88553db537389 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_e69bed2a043b969c" hs_bindgen_e69bed2a043b969c :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:994: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_e69bed2a043b969c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_7d277b11898afc51" hs_bindgen_7d277b11898afc51 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:996: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_7d277b11898afc51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_c2e951e0ed158cc5" hs_bindgen_c2e951e0ed158cc5 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:997: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_c2e951e0ed158cc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_23c06b9c1045ec35" hs_bindgen_23c06b9c1045ec35 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:998: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_23c06b9c1045ec35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_0c51c1a8b91928fb" hs_bindgen_0c51c1a8b91928fb :: + 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:1001: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_0c51c1a8b91928fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_4c3d5dc334ed7462" hs_bindgen_4c3d5dc334ed7462 :: + 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:1004: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_4c3d5dc334ed7462 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_1605a5ba77e61e8f" hs_bindgen_1605a5ba77e61e8f :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1011: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_1605a5ba77e61e8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_34bc0b9c09eca11c" hs_bindgen_34bc0b9c09eca11c :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1018: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_34bc0b9c09eca11c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_4b87ef713ca43471" hs_bindgen_4b87ef713ca43471 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1023: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_4b87ef713ca43471 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_48f665b07ff5a057" hs_bindgen_48f665b07ff5a057 :: + 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:1027: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_48f665b07ff5a057 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_51b39d2bce7a7e06" hs_bindgen_51b39d2bce7a7e06 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1029: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_51b39d2bce7a7e06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_f4e17602faaedb4b" hs_bindgen_f4e17602faaedb4b :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1030: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_f4e17602faaedb4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_246df78c31623867" hs_bindgen_246df78c31623867 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1032: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_246df78c31623867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_885bb9e6caa87b50" hs_bindgen_885bb9e6caa87b50 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1034: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_885bb9e6caa87b50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_370440c680deecba" hs_bindgen_370440c680deecba :: + 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:1037: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_370440c680deecba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_9691bfbf7692c07c" hs_bindgen_9691bfbf7692c07c :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1039: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_9691bfbf7692c07c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_e3bc2222a6e04ed1" hs_bindgen_e3bc2222a6e04ed1 :: + 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:1046: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_e3bc2222a6e04ed1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_cbe080831f3aacc0" hs_bindgen_cbe080831f3aacc0 :: + 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:1053: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_cbe080831f3aacc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_d42e3e224f485ba4" hs_bindgen_d42e3e224f485ba4 :: + 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:1058: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_d42e3e224f485ba4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_bbdaeed7d13688ef" hs_bindgen_bbdaeed7d13688ef :: + 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:1063: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_bbdaeed7d13688ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_2b8616f1396e9b95" hs_bindgen_2b8616f1396e9b95 :: + 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:1081: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_2b8616f1396e9b95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_33042f85a6c3eb0e" hs_bindgen_33042f85a6c3eb0e :: + 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:1092: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_33042f85a6c3eb0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_2d0e747c5496739d" hs_bindgen_2d0e747c5496739d :: + 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:1108: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_2d0e747c5496739d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_b01449b19356c694" hs_bindgen_b01449b19356c694 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1112: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_b01449b19356c694 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_0ab3871bd3d16568" hs_bindgen_0ab3871bd3d16568 :: + 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:1115: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_0ab3871bd3d16568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_10c53b9148c0b5e6" hs_bindgen_10c53b9148c0b5e6 :: + 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:1117: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_10c53b9148c0b5e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_3a39dcc8b6d1b3ee" hs_bindgen_3a39dcc8b6d1b3ee :: + 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:1119: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_3a39dcc8b6d1b3ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_917aa45116cd0d5b" hs_bindgen_917aa45116cd0d5b :: + 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:1121: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_917aa45116cd0d5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_e47f0acea4ce8b45" hs_bindgen_e47f0acea4ce8b45 :: + 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:1123: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_e47f0acea4ce8b45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_767b01c8a51e9605" hs_bindgen_767b01c8a51e9605 :: + 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:1143: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_767b01c8a51e9605 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_24ab6b8d7b1fa7d6" hs_bindgen_24ab6b8d7b1fa7d6 :: + 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:1165: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_24ab6b8d7b1fa7d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_66eb63ffc2f920c8" hs_bindgen_66eb63ffc2f920c8 :: + 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_66eb63ffc2f920c8 + +{-| 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:1173: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_66eb63ffc2f920c8 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_5f11841085b77f49" hs_bindgen_5f11841085b77f49 :: + 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:1178:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_5f11841085b77f49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_8515a374b6c553f8" hs_bindgen_8515a374b6c553f8 :: + 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:1191: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_8515a374b6c553f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d99a96f49cd06abf" hs_bindgen_d99a96f49cd06abf :: + 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:1196: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_d99a96f49cd06abf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_055914bdd0d2692c" hs_bindgen_055914bdd0d2692c :: + 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:1201: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_055914bdd0d2692c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_7bb85e8df4ac2944" hs_bindgen_7bb85e8df4ac2944 :: + 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:1206: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_7bb85e8df4ac2944 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_611d103c9c843ac1" hs_bindgen_611d103c9c843ac1 :: + 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:1208: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_611d103c9c843ac1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_3b9b1ade9b6b2569" hs_bindgen_3b9b1ade9b6b2569 :: + 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:1215: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_3b9b1ade9b6b2569 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_716dd53cd2883377" hs_bindgen_716dd53cd2883377 :: + 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:1230: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_716dd53cd2883377 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_7f9ebf07f20bd985" hs_bindgen_7f9ebf07f20bd985 :: + 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:1245: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_7f9ebf07f20bd985 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_8c1f48123006b6f3" hs_bindgen_8c1f48123006b6f3 :: + 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:1262: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_8c1f48123006b6f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_877846e890aab9e3" hs_bindgen_877846e890aab9e3 :: + 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:1277: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_877846e890aab9e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_599599b77fc27a5c" hs_bindgen_599599b77fc27a5c :: + 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:1293: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_599599b77fc27a5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_f73d53a570fbecbe" hs_bindgen_f73d53a570fbecbe :: + 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:1308: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_f73d53a570fbecbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_25cbf1879244d3d8" hs_bindgen_25cbf1879244d3d8 :: + 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_25cbf1879244d3d8 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1319: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_25cbf1879244d3d8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_f88bb7799b3682da" hs_bindgen_f88bb7799b3682da :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1321: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_f88bb7799b3682da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_5f9c49b2753b308a" hs_bindgen_5f9c49b2753b308a :: + 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:1323: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_5f9c49b2753b308a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_eb5fe2d92a94815b" hs_bindgen_eb5fe2d92a94815b :: + 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:1328: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_eb5fe2d92a94815b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_86f4b4e89dc4fcc1" hs_bindgen_86f4b4e89dc4fcc1 :: + 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:1333: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_86f4b4e89dc4fcc1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_1116566814500417" hs_bindgen_1116566814500417 :: + 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:1338: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_1116566814500417 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_7817805d15b5922c" hs_bindgen_7817805d15b5922c :: + 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:1340: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_7817805d15b5922c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_6127d12994bd5136" hs_bindgen_6127d12994bd5136 :: + 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:1345: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_6127d12994bd5136 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_b14ed3b95fd6809c" hs_bindgen_b14ed3b95fd6809c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1347: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_b14ed3b95fd6809c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_eca4465a3dc7eb1b" hs_bindgen_eca4465a3dc7eb1b :: + 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:1350: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_eca4465a3dc7eb1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_66af9b374fa8c2fe" hs_bindgen_66af9b374fa8c2fe :: + 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:1355:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_66af9b374fa8c2fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_44cb8e442c4eaf33" hs_bindgen_44cb8e442c4eaf33 :: + 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:1360: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_44cb8e442c4eaf33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_53254cd993a03127" hs_bindgen_53254cd993a03127 :: + 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:1362: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_53254cd993a03127 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_5a4d8d296dd21f8a" hs_bindgen_5a4d8d296dd21f8a :: + 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:1367: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_5a4d8d296dd21f8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_f38b1f1ac3ed4ecd" hs_bindgen_f38b1f1ac3ed4ecd :: + 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_f38b1f1ac3ed4ecd + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1369: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_f38b1f1ac3ed4ecd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_d64c3cb01be0b56b" hs_bindgen_d64c3cb01be0b56b :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1372: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_d64c3cb01be0b56b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_9c07975833b8f1b6" hs_bindgen_9c07975833b8f1b6 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1374: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_9c07975833b8f1b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_1b8e70fd4365652d" hs_bindgen_1b8e70fd4365652d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1376: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_1b8e70fd4365652d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_8dde78906a42ba7e" hs_bindgen_8dde78906a42ba7e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1378: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_8dde78906a42ba7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_a300d47192df2c14" hs_bindgen_a300d47192df2c14 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1380: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_a300d47192df2c14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_adec1b81206ddfbc" hs_bindgen_adec1b81206ddfbc :: + 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:1383: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_adec1b81206ddfbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_64e259dcabf3ff6f" hs_bindgen_64e259dcabf3ff6f :: + 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:1385: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_64e259dcabf3ff6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_9878ef3a04fd67d4" hs_bindgen_9878ef3a04fd67d4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1388: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_9878ef3a04fd67d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_8ec3c104f6cab6d4" hs_bindgen_8ec3c104f6cab6d4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1390: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_8ec3c104f6cab6d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_db09c83ebda34796" hs_bindgen_db09c83ebda34796 :: + 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:1396: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_db09c83ebda34796 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_61cbb76a8a62dcc4" hs_bindgen_61cbb76a8a62dcc4 :: + 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:1399: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_61cbb76a8a62dcc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_da007b2e97af1c40" hs_bindgen_da007b2e97af1c40 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1402: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_da007b2e97af1c40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_c64dfd6dc1b2ecfb" hs_bindgen_c64dfd6dc1b2ecfb :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1405: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_c64dfd6dc1b2ecfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_af73631123991645" hs_bindgen_af73631123991645 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1407: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_af73631123991645 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_088fba1cdefdbb7f" hs_bindgen_088fba1cdefdbb7f :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1409: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_088fba1cdefdbb7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_71738171ee51ef58" hs_bindgen_71738171ee51ef58 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1411: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_71738171ee51ef58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_56f394968ede8d5e" hs_bindgen_56f394968ede8d5e :: + 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:1426: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_56f394968ede8d5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_cbde0a670c2bdf69" hs_bindgen_cbde0a670c2bdf69 :: + 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:1440: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_cbde0a670c2bdf69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_25fdae6861afa7ec" hs_bindgen_25fdae6861afa7ec :: + 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:1458: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_25fdae6861afa7ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_4a39a667018234bb" hs_bindgen_4a39a667018234bb :: + 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:1473: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_4a39a667018234bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_78069bf777ab7d43" hs_bindgen_78069bf777ab7d43 :: + 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_78069bf777ab7d43 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1479: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_78069bf777ab7d43 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_1083f631ee250751" hs_bindgen_1083f631ee250751 :: + 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_1083f631ee250751 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_1083f631ee250751 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_3264667256f98e69" hs_bindgen_3264667256f98e69 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1483: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_3264667256f98e69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_89866a21e528c6de" hs_bindgen_89866a21e528c6de :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1485: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_89866a21e528c6de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_e1da21a3b70058c6" hs_bindgen_e1da21a3b70058c6 :: + 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_e1da21a3b70058c6 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1491: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_e1da21a3b70058c6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_c139c525cf7f8cb0" hs_bindgen_c139c525cf7f8cb0 :: + 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_c139c525cf7f8cb0 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_c139c525cf7f8cb0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_35ad83c1bdb433fb" hs_bindgen_35ad83c1bdb433fb :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1495: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_35ad83c1bdb433fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_8e39dce20c432ef6" hs_bindgen_8e39dce20c432ef6 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1497: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_8e39dce20c432ef6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_fe84d8b120c7ac03" hs_bindgen_fe84d8b120c7ac03 :: + 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_fe84d8b120c7ac03 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1503: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_fe84d8b120c7ac03 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_612229832d19e253" hs_bindgen_612229832d19e253 :: + 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_612229832d19e253 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_612229832d19e253 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_5d392c8bfeb5191d" hs_bindgen_5d392c8bfeb5191d :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1507: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_5d392c8bfeb5191d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_056fb9d331fdb1ac" hs_bindgen_056fb9d331fdb1ac :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1509: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_056fb9d331fdb1ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_4b57dc38cd4d151c" hs_bindgen_4b57dc38cd4d151c :: + 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_4b57dc38cd4d151c + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1515: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_4b57dc38cd4d151c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_836766cde244a224" hs_bindgen_836766cde244a224 :: + 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_836766cde244a224 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_836766cde244a224 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_7c7ebc5675ba4012" hs_bindgen_7c7ebc5675ba4012 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1519: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_7c7ebc5675ba4012 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_67fa8ba424269133" hs_bindgen_67fa8ba424269133 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1521: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_67fa8ba424269133 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_31a648358d61373b" hs_bindgen_31a648358d61373b :: + 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_31a648358d61373b + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1528: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_31a648358d61373b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_92c7db28852dd301" hs_bindgen_92c7db28852dd301 :: + 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_92c7db28852dd301 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1531: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_92c7db28852dd301 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_ad25675b7404380b" hs_bindgen_ad25675b7404380b :: + 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_ad25675b7404380b + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1537: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_ad25675b7404380b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_edb4f2cbada41033" hs_bindgen_edb4f2cbada41033 :: + 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_edb4f2cbada41033 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_edb4f2cbada41033 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_f8eba7534cef7c9f" hs_bindgen_f8eba7534cef7c9f :: + 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:1543: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_f8eba7534cef7c9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_48efa958e68f59d3" hs_bindgen_48efa958e68f59d3 :: + 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:1547: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_48efa958e68f59d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_1a13914519307466" hs_bindgen_1a13914519307466 :: + 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_1a13914519307466 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1554: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_1a13914519307466 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_41101487dd014721" hs_bindgen_41101487dd014721 :: + 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_41101487dd014721 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1557: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_41101487dd014721 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_b1871af99727d9bc" hs_bindgen_b1871af99727d9bc :: + 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_b1871af99727d9bc + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1564: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_b1871af99727d9bc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_732259e7add0d22c" hs_bindgen_732259e7add0d22c :: + 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_732259e7add0d22c + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1567: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_732259e7add0d22c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_6aca77a4e81373ea" hs_bindgen_6aca77a4e81373ea :: + 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_6aca77a4e81373ea + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1574: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_6aca77a4e81373ea x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_a1a4e2249cdd60b4" hs_bindgen_a1a4e2249cdd60b4 :: + 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_a1a4e2249cdd60b4 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1577: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_a1a4e2249cdd60b4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_0a8b63c59f7ec018" hs_bindgen_0a8b63c59f7ec018 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1583: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_0a8b63c59f7ec018 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_b05c03b3832bfced" hs_bindgen_b05c03b3832bfced :: + 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:1586: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_b05c03b3832bfced + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_216eeb28ad7ff1fc" hs_bindgen_216eeb28ad7ff1fc :: + 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:1589: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_216eeb28ad7ff1fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_4f2994730e96c0a5" hs_bindgen_4f2994730e96c0a5 :: + 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:1592: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_4f2994730e96c0a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_39f629f1f2b84e83" hs_bindgen_39f629f1f2b84e83 :: + 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:1595: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_39f629f1f2b84e83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_21825781093bbd83" hs_bindgen_21825781093bbd83 :: + 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:1598: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_21825781093bbd83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_9cc25da66081ecc7" hs_bindgen_9cc25da66081ecc7 :: + 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:1601: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_9cc25da66081ecc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_9db7154d8f54c743" hs_bindgen_9db7154d8f54c743 :: + 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:1605: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_9db7154d8f54c743 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_71c2a31edf22765f" hs_bindgen_71c2a31edf22765f :: + 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:1609: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_71c2a31edf22765f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_acf2229b5773c8f1" hs_bindgen_acf2229b5773c8f1 :: + 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:1612: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_acf2229b5773c8f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_d3cd73a2c618a718" hs_bindgen_d3cd73a2c618a718 :: + 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:1619: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_d3cd73a2c618a718 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_73ae37480fbd40a2" hs_bindgen_73ae37480fbd40a2 :: + 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:1627: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_73ae37480fbd40a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_1722f64d2cf71d09" hs_bindgen_1722f64d2cf71d09 :: + 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:1632: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_1722f64d2cf71d09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_2814e4bf4a5c490f" hs_bindgen_2814e4bf4a5c490f :: + 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:1635: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_2814e4bf4a5c490f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_dc8f0ded04cbf2d0" hs_bindgen_dc8f0ded04cbf2d0 :: + 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_dc8f0ded04cbf2d0 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1638: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_dc8f0ded04cbf2d0 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_7297d82debbf5b4e" hs_bindgen_7297d82debbf5b4e :: + 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:1651: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_7297d82debbf5b4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_9f345e8692f869eb" hs_bindgen_9f345e8692f869eb :: + 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:1656: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_9f345e8692f869eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_d194807f9acb3e81" hs_bindgen_d194807f9acb3e81 :: + 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:1659: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_d194807f9acb3e81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_d4d6437ee2e2ea58" hs_bindgen_d4d6437ee2e2ea58 :: + 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_d4d6437ee2e2ea58 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1662: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_d4d6437ee2e2ea58 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_9f1c0b096ae69bf5" hs_bindgen_9f1c0b096ae69bf5 :: + 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:1674: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_9f1c0b096ae69bf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_0161d9ea81f10692" hs_bindgen_0161d9ea81f10692 :: + 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:1679: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_0161d9ea81f10692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_78bfd8ef83e9ce4d" hs_bindgen_78bfd8ef83e9ce4d :: + 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:1681: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_78bfd8ef83e9ce4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_0bf1596dd7323eda" hs_bindgen_0bf1596dd7323eda :: + 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_0bf1596dd7323eda + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1683: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_0bf1596dd7323eda x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_c91da81a96fe535b" hs_bindgen_c91da81a96fe535b :: + 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:1686: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_c91da81a96fe535b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_a94dcde85be0b2a1" hs_bindgen_a94dcde85be0b2a1 :: + 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:1694: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_a94dcde85be0b2a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_d3fe80dbb9269396" hs_bindgen_d3fe80dbb9269396 :: + 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:1702: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_d3fe80dbb9269396 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_6692ef7e1ad5068f" hs_bindgen_6692ef7e1ad5068f :: + 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_6692ef7e1ad5068f + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1704: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_6692ef7e1ad5068f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_7786706b56503355" hs_bindgen_7786706b56503355 :: + 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_7786706b56503355 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1705: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_7786706b56503355 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_36e90ea4e826ca2f" hs_bindgen_36e90ea4e826ca2f :: + 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:1713: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_36e90ea4e826ca2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_10b5e2678ea1dbe5" hs_bindgen_10b5e2678ea1dbe5 :: + 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:1718: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_10b5e2678ea1dbe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_2709c52c93b913ae" hs_bindgen_2709c52c93b913ae :: + 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:1720: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_2709c52c93b913ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_0978c24d79e9734b" hs_bindgen_0978c24d79e9734b :: + 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:1723: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_0978c24d79e9734b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_f7420d094eb3df1f" hs_bindgen_f7420d094eb3df1f :: + 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:1725: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_f7420d094eb3df1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_3fdc80b80c6da455" hs_bindgen_3fdc80b80c6da455 :: + 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_3fdc80b80c6da455 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1728: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_3fdc80b80c6da455 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_88edde447ebe645e" hs_bindgen_88edde447ebe645e :: + 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:1742: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_88edde447ebe645e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_33a70ec97f0243c8" hs_bindgen_33a70ec97f0243c8 :: + 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:1747: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_33a70ec97f0243c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_98046bfaaad42fbb" hs_bindgen_98046bfaaad42fbb :: + 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:1750: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_98046bfaaad42fbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_031cb8cd21836d2e" hs_bindgen_031cb8cd21836d2e :: + 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:1755: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_031cb8cd21836d2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_92ef17434322522c" hs_bindgen_92ef17434322522c :: + 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_92ef17434322522c + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1759: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_92ef17434322522c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_298b053ac920c01f" hs_bindgen_298b053ac920c01f :: + 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:1772: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_298b053ac920c01f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_3a4c7e90bfb6ff35" hs_bindgen_3a4c7e90bfb6ff35 :: + 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:1777: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_3a4c7e90bfb6ff35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_91d0955ab357e2aa" hs_bindgen_91d0955ab357e2aa :: + 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:1780: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_91d0955ab357e2aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_b02b74a131f1903d" hs_bindgen_b02b74a131f1903d :: + 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_b02b74a131f1903d + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1785: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_b02b74a131f1903d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_99d2868eb6375c69" hs_bindgen_99d2868eb6375c69 :: + 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:1798: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_99d2868eb6375c69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_4931f80c5dc53c71" hs_bindgen_4931f80c5dc53c71 :: + 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_4931f80c5dc53c71 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1805: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_4931f80c5dc53c71 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_d6eb16691c3172d0" hs_bindgen_d6eb16691c3172d0 :: + 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_d6eb16691c3172d0 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1820: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_d6eb16691c3172d0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_bebe7ece88858469" hs_bindgen_bebe7ece88858469 :: + 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_bebe7ece88858469 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1835: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_bebe7ece88858469 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_689d583fbdb84caa" hs_bindgen_689d583fbdb84caa :: + 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:1836: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_689d583fbdb84caa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_26cd62a4b4ab47a5" hs_bindgen_26cd62a4b4ab47a5 :: + 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:1841: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_26cd62a4b4ab47a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_81bf798fbe0648b6" hs_bindgen_81bf798fbe0648b6 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1843: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_81bf798fbe0648b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_82d8ebe66174c447" hs_bindgen_82d8ebe66174c447 :: + 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:1846: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_82d8ebe66174c447 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_a5b180548cfd8e76" hs_bindgen_a5b180548cfd8e76 :: + 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:1847: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_a5b180548cfd8e76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_dfae62f58ed16d22" hs_bindgen_dfae62f58ed16d22 :: + 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:1849: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_dfae62f58ed16d22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_d5b1d6a84870773f" hs_bindgen_d5b1d6a84870773f :: + 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:1850: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_d5b1d6a84870773f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_150c534a3c0947bc" hs_bindgen_150c534a3c0947bc :: + 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:1853: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_150c534a3c0947bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_344f4d6e18226d1e" hs_bindgen_344f4d6e18226d1e :: + 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:1855: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_344f4d6e18226d1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_a93f8fe4e44b29b0" hs_bindgen_a93f8fe4e44b29b0 :: + 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:1856: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_a93f8fe4e44b29b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_91366349577e7a34" hs_bindgen_91366349577e7a34 :: + 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:1857: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_91366349577e7a34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_4385de35c0312f67" hs_bindgen_4385de35c0312f67 :: + 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:1859: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_4385de35c0312f67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_4af3727ce50f2354" hs_bindgen_4af3727ce50f2354 :: + 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:1862: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_4af3727ce50f2354 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_4655f18c192fcf62" hs_bindgen_4655f18c192fcf62 :: + 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:1864: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_4655f18c192fcf62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_682164e098dbf532" hs_bindgen_682164e098dbf532 :: + 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:1867: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_682164e098dbf532 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_786e89168508015f" hs_bindgen_786e89168508015f :: + 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:1871: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_786e89168508015f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_19e0ddb2a49236b1" hs_bindgen_19e0ddb2a49236b1 :: + 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:1874: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_19e0ddb2a49236b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_ab5189f2dc604fab" hs_bindgen_ab5189f2dc604fab :: + 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:1877: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_ab5189f2dc604fab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_b8c16ec083adfcbc" hs_bindgen_b8c16ec083adfcbc :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1893: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_b8c16ec083adfcbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_052208e72724d178" hs_bindgen_052208e72724d178 :: + 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:1899: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_052208e72724d178 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_f663671f4078453c" hs_bindgen_f663671f4078453c :: + 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:1910: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_f663671f4078453c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_f26498062f694c0e" hs_bindgen_f26498062f694c0e :: + 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:1925: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_f26498062f694c0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_95ef41c154f84dd0" hs_bindgen_95ef41c154f84dd0 :: + 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:1933: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_95ef41c154f84dd0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_11763f3b357ff4de" hs_bindgen_11763f3b357ff4de :: + 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_11763f3b357ff4de + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1935: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_11763f3b357ff4de x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_249ee3f583f7e8cd" hs_bindgen_249ee3f583f7e8cd :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1937: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_249ee3f583f7e8cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_d90c0c18004e1316" hs_bindgen_d90c0c18004e1316 :: + 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:1943: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_d90c0c18004e1316 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_996140da5ae3de55" hs_bindgen_996140da5ae3de55 :: + 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:1950: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_996140da5ae3de55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_a66a2720c4d2ec73" hs_bindgen_a66a2720c4d2ec73 :: + 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_a66a2720c4d2ec73 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1968: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_a66a2720c4d2ec73 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_3b36e18edadb0dd5" hs_bindgen_3b36e18edadb0dd5 :: + 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_3b36e18edadb0dd5 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1977: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_3b36e18edadb0dd5 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_44f4b3bff7a9fdbd" hs_bindgen_44f4b3bff7a9fdbd :: + 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_44f4b3bff7a9fdbd + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1985: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_44f4b3bff7a9fdbd x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_1ab8df56c5adfd07" hs_bindgen_1ab8df56c5adfd07 :: + 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_1ab8df56c5adfd07 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1995: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_1ab8df56c5adfd07 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_4dba34b7f4a3a7b1" hs_bindgen_4dba34b7f4a3a7b1 :: + 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_4dba34b7f4a3a7b1 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2014: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_4dba34b7f4a3a7b1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_4fd2204f598ed93b" hs_bindgen_4fd2204f598ed93b :: + 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:2021:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_4fd2204f598ed93b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_e2d39dc9ae84e2c2" hs_bindgen_e2d39dc9ae84e2c2 :: + 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:2027: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_e2d39dc9ae84e2c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_79ae45e6422ec79f" hs_bindgen_79ae45e6422ec79f :: + 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:2033: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_79ae45e6422ec79f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_b161f874eec33bb1" hs_bindgen_b161f874eec33bb1 :: + 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_b161f874eec33bb1 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2046: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_b161f874eec33bb1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_5af4b8569a82641d" hs_bindgen_5af4b8569a82641d :: + 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:2054:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_5af4b8569a82641d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_63020bfcc1d98236" hs_bindgen_63020bfcc1d98236 :: + 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:2063: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_63020bfcc1d98236 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_df08ad4e8be5c5fa" hs_bindgen_df08ad4e8be5c5fa :: + 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:2074: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_df08ad4e8be5c5fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_9b8b7427e84bae56" hs_bindgen_9b8b7427e84bae56 :: + 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_9b8b7427e84bae56 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2085: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_9b8b7427e84bae56 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_09003f47504f74e0" hs_bindgen_09003f47504f74e0 :: + 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:2092:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_09003f47504f74e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_68749bd71ae711ed" hs_bindgen_68749bd71ae711ed :: + 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_68749bd71ae711ed + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2095: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_68749bd71ae711ed x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_39a6e42d6bbb3b5d" hs_bindgen_39a6e42d6bbb3b5d :: + 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_39a6e42d6bbb3b5d + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2098: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_39a6e42d6bbb3b5d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_767c0ec71ac39d7f" hs_bindgen_767c0ec71ac39d7f :: + 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:2110: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_767c0ec71ac39d7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_4033f1b157526ae4" hs_bindgen_4033f1b157526ae4 :: + 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:2118: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_4033f1b157526ae4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_7486de9cd625168b" hs_bindgen_7486de9cd625168b :: + 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_7486de9cd625168b + +{-| 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:2133: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_7486de9cd625168b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_24aa01ea9bb8d62b" hs_bindgen_24aa01ea9bb8d62b :: + 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_24aa01ea9bb8d62b + +{-| 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:2152: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_24aa01ea9bb8d62b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_d849c828a68d7b51" hs_bindgen_d849c828a68d7b51 :: + 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_d849c828a68d7b51 + +{-| 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:2168: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_d849c828a68d7b51 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_0d3d263c5f280e01" hs_bindgen_0d3d263c5f280e01 :: + 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_0d3d263c5f280e01 + +{-| 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:2195: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_0d3d263c5f280e01 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_6_1_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_05e8bd30c9cc30e3" hs_bindgen_05e8bd30c9cc30e3 :: + 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:2213: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_05e8bd30c9cc30e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_569d513a44b7cb0d" hs_bindgen_569d513a44b7cb0d :: + 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:2234: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_569d513a44b7cb0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_07aa22c30172f107" hs_bindgen_07aa22c30172f107 :: + 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:2255: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_07aa22c30172f107 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_a774f23cdb06a034" hs_bindgen_a774f23cdb06a034 :: + 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:2273:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_a774f23cdb06a034 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_9f6e4e4c6ca6d751" hs_bindgen_9f6e4e4c6ca6d751 :: + 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:2281: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_9f6e4e4c6ca6d751 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_acfc8fe205001b97" hs_bindgen_acfc8fe205001b97 :: + 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:2291: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_acfc8fe205001b97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_096d997fdc290582" hs_bindgen_096d997fdc290582 :: + 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:2303: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_096d997fdc290582 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_1eaaf98b67d6a523" hs_bindgen_1eaaf98b67d6a523 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2310: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_1eaaf98b67d6a523 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_df2b850bc6cec6cf" hs_bindgen_df2b850bc6cec6cf :: + 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:2321: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_df2b850bc6cec6cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_207ecf0be5aa2233" hs_bindgen_207ecf0be5aa2233 :: + 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:2333: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_207ecf0be5aa2233 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_6_1_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_298b7adc66ae3ee1" hs_bindgen_298b7adc66ae3ee1 :: + 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:2340: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_298b7adc66ae3ee1 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0.hs new file mode 100644 index 00000000..6f1a3a21 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0.hs @@ -0,0 +1,1627 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_7_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:71:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20240408 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:113: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 + +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") + , (-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:114: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:115: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:117: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:118: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:120: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:121: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:123: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:124: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:125: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:126: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:128: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:129: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:130: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:131: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:132: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:133: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:135: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:136: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:138: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:139: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:140: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:141: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:143: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:146: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' + +__defined at:__ @botan\/ffi.h:155:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:155: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:164:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:164: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:237:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:272:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:272: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:362:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:362: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:442:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:442: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:538:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:538: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:540: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:541: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:542: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:635: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:836:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:836: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:902:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:902: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1099:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1099: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:1112: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:1182: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:1183: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:1184:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1319:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1319: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1642:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1642: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1666:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1666: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:1687:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1689:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1689: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1709:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1709: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1728:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1728: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1757: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:1757: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1787: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:1787: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1851:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1851: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1898: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 + +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:1899: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:1900: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:1901: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:1902: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:1903: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:1904: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:1905: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:1906: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:1907: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:1908: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1949:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1949: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2026:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2026: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2058:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2058: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2098:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2098: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:2100: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2121: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:2121: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2279:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2279: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2284:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2284: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:__ @botan_tpm2_crypto_backend_state_struct@ + + __defined at:__ @botan\/ffi.h:2289: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:2289: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:__ @ESYS_CONTEXT@ + + __defined at:__ @botan\/ffi.h:2291: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_7_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/FunPtr.hs new file mode 100644 index 00000000..b56e51e9 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/FunPtr.hs @@ -0,0 +1,9263 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_7_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_7_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_7_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_8801402fadb62c11 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_d56515879fe69549 (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_69aa609507dde125 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f6edb0143e734eb (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f4eb58dec49bcbff (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_9b22ff845a4c9f32 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_32ffb710974db7ff (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_39d9b032e52dc3bb (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_b40a6aa46420981d (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32578ef5033a05e5 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b953d5c9d6dcb402 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1ab074d24f3d923 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c885406fb4254e0 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ba7d0b386dda850 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35ca92fc7935050c (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee4de4db351e9990 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95db6f637f8f6cad (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_783e153329f636e2 (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_7_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f263b8027010cd3 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83fb13ef671baf61 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d68488a521c42843 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4959f145847543be (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_306473cc87944e3c (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3a4895cb3004176 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65cbbed8fb74c627 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2299268db8a1dff (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9ead58223ff8638 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab1ff69f46fee0b8 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee23901201a3c770 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db98e7daf95f6ad5 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7196d716e585eeb (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9eb596ccede3a0d2 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1667ec2ec78e7e7d (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_46490f9dd7c878cb (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a99e78ec2d2eea75 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8217a5ef427b0571 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d8622cc2ee0aa9d (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9af84fae0c62f6b (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_660b458d6d8afb28 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3f0eb993d1f35ed (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f6346f59dad4653 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab0ab334047eb35a (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_7_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bad0fd1d497aa52 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_167786561268c7aa (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a4315890b051eb7 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb7d3ce101af7775 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9774aee28709155 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28567213258b4037 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e4cae0c19e26cc4 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ae0fcc3cec29a1a (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_17c52ca96b74450d (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05e93d7e19170fd6 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ecea998c6d3a3bf1 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3d88b0d17e3484c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c8ffcfc1c76aa0cd (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_7_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe275cb1436fe80b (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38a3514c724d2967 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4a6bb785b7c0bc2 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56a5f6128dced7ff (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35b5131f380c92d3 (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_7_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c41b65d1cddad13 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65b590f1a4d611f1 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b5b529bc5f45456 (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_7_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64bdc82a9f2ab41d (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_7_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42a40d3219fb445f (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_7_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f74155639311c96 (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_7_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb8c27a5dba7228b (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_7_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a00782518890d06 (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_7_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff50458a3ba9b9fc (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ad624e61b9942ae (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14e91f519a6d6726 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b29a7f3742d2b41e (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_7_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8008629f703c244 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7a20ab09577aa70 (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_7_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb4a60e8dd0ed375 (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_7_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e5dfa2d36b5b30f (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_915bd5aadfcd9357 (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_7_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_937b75919ff2cd25 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_711d16efee5d603a (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3de0860678a6b714 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e9032c344bfef93 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bcf020c9422ac893 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5162afa6ff1d9e8f (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_653c13958a76d898 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7206ed891307181 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eca36dc688d322c2 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d99a2ed9a354186 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7a51bc04eb87223 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bcaddf4a42bf1db2 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95ab527261a61331 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d8330306d2d3ad6f (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8bda0ab9a0d67547 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_115d2232d0c5cb9f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6fa8dbf3ee85e04 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6d09d481ed026d5 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f04002203450a495 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c01110825e2c381b (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0cd87796bc392aed (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cfebf611e31b490a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b49d9be607b54288 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b79cca7052c9b811 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea3936ca07ad3ab3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a1e81d3113894ef (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_7_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9eee77596dd11770 (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_7_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1e80586ff5bced5 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_162e1a0ea3512dff (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4875b6d92d1d5407 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8eb6fbb34bda286d (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_7_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c05c3c4e2179be69 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3607c41ed87b8496 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57e8f502bb58d757 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_251c47c95c2579a1 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c315115abc1c65f (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_7_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_529eafcd4e900511 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf9ecfb0645057de (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71923222bb69c81e (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc4d00af82369d5e (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f8d9b4b99fe5cb9 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a86ad8d51992eddd (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_7_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1539ea7d796f4024 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36ef554996354863 (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_7_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30eaf8f6c801bb24 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2099fdf3ddd59b48 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1742091937175616 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd6adacd56d4fc79 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_62bc4d6577649242 (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_7_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb0bd47bfb06db4c (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33b93a808c87849d (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_7_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2bfdd4375703749 (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_7_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9f86ddb4f21a975 (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_7_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_553be55afd3e14fa (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16b0be8e158fb195 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_684c104abf743e06 (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_7_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec7d09905871d8fc (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_7_0_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f021532869d6551 (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_7_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c54523239bdf7b6 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_85cffb181cc7af7d (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_7_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0ae6cbdc980bc61 (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_7_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d955e58061be6969 (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_7_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5dab44312b11f3f (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_7_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a5478c2fd0cfb46 (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_7_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc75fe80e0657202 (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_7_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_450a95a16f56ff49 (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_7_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_62bf35ea9ebb4c7a (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0fe5a96661de7526 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9f92dd1ee4aaa17 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76118913981525d0 (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_7_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a60cf933607ec2a0 (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_7_0_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d58691fc9e23db5 (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_7_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b91a7e36b3eea2fa (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e20000e8e773425f (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00da6f046caf8a99 (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7385b4c07267eb8 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6864479481bee81 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73f0f5354d956f33 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_776b62cb0bd7de66 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1db6183d43f091db (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_7_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75a7f6f43bcdf84a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03c365656687b17b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a52a71b7b77bb07e (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd68767ff7999ecb (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3bbe0be4474828c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d54fda0730054456 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_962702e449497c33 (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_7_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2dc25df2bbe20f39 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_933e9a168940472d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_365e97a7c6c2fffc (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1aa8c61faf44adc2 (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_7_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f302b50907aae95 (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_7_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56e0c0b841df018b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70efbfbf7e560092 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1f43ef21c8bc1581 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98189ad52f5db686 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7cab856fe188d617 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b20e9f8348746ae4 (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_7_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ebae5193c51b086e (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_7_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4137e79585d17b4a (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_7_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23769e0f30edba14 (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_7_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_125556d4cf9336ff (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d49f73033754e39 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f26f1498d8a5e7bd (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c328383644ef8b8 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbcba32fd2803836 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba445e8dca9e3f9e (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05de61513b4a2123 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bea2ea57c93769d1 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce6c84f7127dd02a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4b04d6f670191a1 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9749516e1676d02 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0dbb1fba392a2be1 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3ed210ea459f16c (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6b539b30a4e8aabb (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_323f4e93237f00cb (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6b69cb7ece21d10 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb970f7a7db78e1a (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_7_0_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65999414b998c5b6 (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_7_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87a90cc95e6d746f (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bbd86cac31d1eb59 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c90b857b191c87c7 (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_7_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_318814816e522e49 (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_7_0_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0749532f82443fcc (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_7_0_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8357266dca16c799 (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_7_0_get_botan_privkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49e8f04e35fa7778 (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_7_0_get_botan_pubkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dbf1b8f0409b09fb (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_7_0_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c845eac9422b312d (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_7_0_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7f8c9fd5af8b030 (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_7_0_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6dc95c5f38ea8fa (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_7_0_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e56f8e0e50834ab3 (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_7_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6cc94a62c89c9b2f (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee4e5df429fe0e48 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c02e6ff47debef92 (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_7_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf7873bd78aca9b5 (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_7_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3089c5ffc792c58b (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_597834e344c05cc4 (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_7_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3ed07bd77009dee (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc275f4ef9490142 (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_7_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ef62eea9d740550 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a11a79c866df700 (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_7_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b25d1ff0f14ad504 (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_7_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a5e10bb5f7bd311 (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_7_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ea4ce7d8cd74992 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_21f1cfa354853c22 (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_7_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_659fd5f8db84d128 (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_7_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6775a6544efeefab (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_7_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ccfbab43ab077fd (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94d6fd76344aa734 (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_7_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7b437ab2a73a37c (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_7_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_143fb307b3a6d339 (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_7_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10f6c9eb821ccc84 (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e9b3e633243d5dd (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df5bfedfe8909f94 (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_7_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2276bdad4e46161d (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_7_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f9ff65dc5e899f8 (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_7_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd0d8114c42bdaf6 (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95c119c8c2a44627 (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_7_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51168eb64a2a8842 (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_7_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_528ba6429c82cf78 (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_7_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_89525d98611ef630 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d8650cef1f6539c (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_7_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab5f1c01c4d5cb55 (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_7_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a37cbf5932e5f1e (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d89265ff7d239dbe (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_7_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c478bc9d03c18288 (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_7_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_879ab660c19a0670 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_794f0c8f0e3f8506 (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_7_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e003f9acd0f35a4 (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_7_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_615b3e14642ed98a (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_7_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b62df3417709637 (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_7_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18ed5207d9851af0 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbd081278938e875 (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_7_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b806542417871e82 (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_7_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_561ab5322103cb3f (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ee3a139afa3ca1c (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_7_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb4267507ed30fcd (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_7_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e1ed1b406e0faf1 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d5ba445e72ef7b1 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_924a71618e0ddda6 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3588591eb95137e0 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_090f87b0bf296171 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c5b6dfe433ab406 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c083cbda3ee5d6ff (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da99f798e2fb3895 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4bd89e49d9085209 (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_7_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd8b6ec0574d5cd5 (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_7_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ee287ce97435b91 (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_7_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c970ca022c847da (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_7_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68ce92abe727aa55 (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_7_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1994a3ce008a28a (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_7_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c566f6b7d3d6413 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c27431c81a294af9 (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_7_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_125f1a4b76109acb (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_7_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0188481635650a1b (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_009e2665523e1cac (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_7_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4424acd9e45d9448 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_214933c61541b263 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb9409c08caa092b (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_7_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_714de517741769a2 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6132a8b3cb3ea0a7 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4995838f65a3d8b7 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ddf66b328385c22a (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e2308eed5eea6a1 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1d430c21d4d5099 (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_7_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_898602bbe34defb6 (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_7_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d1528bd90d448de (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_7_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7a145e85f5e9aab (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_7_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88e33e52fd5113ad (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_7_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27de5a82a79b969d (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_7_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b4ac373ec2dbfa7 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35cd537612157cff (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3811b7c174593c54 (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_7_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a75f75efd39d4326 (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_7_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a2d45f1fa251322 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c8e7120bbec640b0 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6e75803752918f1 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3dae5a2c89f81d2d (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_7_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dff6381cedc5bfc1 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abc3397e54edcff3 (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_7_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_022d1860decb2849 (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_7_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26e1660a69c76ae4 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_617d344923e59204 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1a1d9dc1343660e (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_7_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_863c03b679743329 (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_7_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09c3fe7115a58f08 (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_7_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48d529c085b79af3 (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_7_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa474c5fe9c1dea4 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8480e268dabf30c (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_7_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_963511b147e2ebae (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_7_0_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eff00ce3813871a6 (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_577e9cef7dd46f59 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f82adc95b8109d68 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_from_esys */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88702d2797c7cb59 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_from_esys;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf81f109655674c7 (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c8628f135161ca6 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_61914af516523a68 (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_7_0_get_botan_tpm2_crypto_backend_state_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e17987c425c91e51 (void)) (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return &botan_tpm2_crypto_backend_state_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f24c4807c9b0427 (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_7_0_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5e51f71415eaec8 (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d95f084102c704ac (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_8801402fadb62c11" hs_bindgen_8801402fadb62c11 :: + 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:170: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_8801402fadb62c11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_d56515879fe69549" hs_bindgen_d56515879fe69549 :: + 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:179: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_d56515879fe69549 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_69aa609507dde125" hs_bindgen_69aa609507dde125 :: + 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:186: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_69aa609507dde125 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_3f6edb0143e734eb" hs_bindgen_3f6edb0143e734eb :: + 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:192: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_3f6edb0143e734eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_f4eb58dec49bcbff" hs_bindgen_f4eb58dec49bcbff :: + 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:197: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_f4eb58dec49bcbff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_9b22ff845a4c9f32" hs_bindgen_9b22ff845a4c9f32 :: + 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:202: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_9b22ff845a4c9f32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_32ffb710974db7ff" hs_bindgen_32ffb710974db7ff :: + 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:207: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_32ffb710974db7ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_39d9b032e52dc3bb" hs_bindgen_39d9b032e52dc3bb :: + 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:212: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_39d9b032e52dc3bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_b40a6aa46420981d" hs_bindgen_b40a6aa46420981d :: + 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:218: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_b40a6aa46420981d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_32578ef5033a05e5" hs_bindgen_32578ef5033a05e5 :: + 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:223: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_32578ef5033a05e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_b953d5c9d6dcb402" hs_bindgen_b953d5c9d6dcb402 :: + 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:229: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_b953d5c9d6dcb402 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_c1ab074d24f3d923" hs_bindgen_c1ab074d24f3d923 :: + 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:235: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_c1ab074d24f3d923 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_6c885406fb4254e0" hs_bindgen_6c885406fb4254e0 :: + 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:247: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_6c885406fb4254e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_3ba7d0b386dda850" hs_bindgen_3ba7d0b386dda850 :: + 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:257: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_3ba7d0b386dda850 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_35ca92fc7935050c" hs_bindgen_35ca92fc7935050c :: + 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:262: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_35ca92fc7935050c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_ee4de4db351e9990" hs_bindgen_ee4de4db351e9990 :: + 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:267: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_ee4de4db351e9990 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_95db6f637f8f6cad" hs_bindgen_95db6f637f8f6cad :: + 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:286: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_95db6f637f8f6cad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_783e153329f636e2" hs_bindgen_783e153329f636e2 :: + 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:298: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_783e153329f636e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_8f263b8027010cd3" hs_bindgen_8f263b8027010cd3 :: + 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:312: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_8f263b8027010cd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_83fb13ef671baf61" hs_bindgen_83fb13ef671baf61 :: + 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:320: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_83fb13ef671baf61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_d68488a521c42843" hs_bindgen_d68488a521c42843 :: + 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:330: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_d68488a521c42843 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_4959f145847543be" hs_bindgen_4959f145847543be :: + 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:340: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_4959f145847543be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_306473cc87944e3c" hs_bindgen_306473cc87944e3c :: + 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:350: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_306473cc87944e3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_f3a4895cb3004176" hs_bindgen_f3a4895cb3004176 :: + 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:357: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_f3a4895cb3004176 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_65cbbed8fb74c627" hs_bindgen_65cbbed8fb74c627 :: + 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:371: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_65cbbed8fb74c627 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_b2299268db8a1dff" hs_bindgen_b2299268db8a1dff :: + 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:379: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_b2299268db8a1dff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_c9ead58223ff8638" hs_bindgen_c9ead58223ff8638 :: + 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:387: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_c9ead58223ff8638 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_ab1ff69f46fee0b8" hs_bindgen_ab1ff69f46fee0b8 :: + 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:395: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_ab1ff69f46fee0b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_ee23901201a3c770" hs_bindgen_ee23901201a3c770 :: + 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:404: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_ee23901201a3c770 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_db98e7daf95f6ad5" hs_bindgen_db98e7daf95f6ad5 :: + 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:414: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_db98e7daf95f6ad5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_b7196d716e585eeb" hs_bindgen_b7196d716e585eeb :: + 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:422: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_b7196d716e585eeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_9eb596ccede3a0d2" hs_bindgen_9eb596ccede3a0d2 :: + 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:429: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_9eb596ccede3a0d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_1667ec2ec78e7e7d" hs_bindgen_1667ec2ec78e7e7d :: + 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:437: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_1667ec2ec78e7e7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_46490f9dd7c878cb" hs_bindgen_46490f9dd7c878cb :: + 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:452: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_46490f9dd7c878cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_a99e78ec2d2eea75" hs_bindgen_a99e78ec2d2eea75 :: + 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:460: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_a99e78ec2d2eea75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_8217a5ef427b0571" hs_bindgen_8217a5ef427b0571 :: + 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:469: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_8217a5ef427b0571 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_4d8622cc2ee0aa9d" hs_bindgen_4d8622cc2ee0aa9d :: + 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:478: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_4d8622cc2ee0aa9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_f9af84fae0c62f6b" hs_bindgen_f9af84fae0c62f6b :: + 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:487: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_f9af84fae0c62f6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_660b458d6d8afb28" hs_bindgen_660b458d6d8afb28 :: + 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:497: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_660b458d6d8afb28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_b3f0eb993d1f35ed" hs_bindgen_b3f0eb993d1f35ed :: + 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:505: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_b3f0eb993d1f35ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_9f6346f59dad4653" hs_bindgen_9f6346f59dad4653 :: + 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:513: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_9f6346f59dad4653 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_ab0ab334047eb35a" hs_bindgen_ab0ab334047eb35a :: + 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:523: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_ab0ab334047eb35a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_4bad0fd1d497aa52" hs_bindgen_4bad0fd1d497aa52 :: + 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:533: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_4bad0fd1d497aa52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_167786561268c7aa" hs_bindgen_167786561268c7aa :: + 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:547: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_167786561268c7aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_9a4315890b051eb7" hs_bindgen_9a4315890b051eb7 :: + 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:552: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_9a4315890b051eb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_fb7d3ce101af7775" hs_bindgen_fb7d3ce101af7775 :: + 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:557: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_fb7d3ce101af7775 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_c9774aee28709155" hs_bindgen_c9774aee28709155 :: + 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:562: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_c9774aee28709155 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_28567213258b4037" hs_bindgen_28567213258b4037 :: + 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:567: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_28567213258b4037 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_8e4cae0c19e26cc4" hs_bindgen_8e4cae0c19e26cc4 :: + 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:572: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_8e4cae0c19e26cc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_6ae0fcc3cec29a1a" hs_bindgen_6ae0fcc3cec29a1a :: + 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:579: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_6ae0fcc3cec29a1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_17c52ca96b74450d" hs_bindgen_17c52ca96b74450d :: + 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:584: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_17c52ca96b74450d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_05e93d7e19170fd6" hs_bindgen_05e93d7e19170fd6 :: + 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:590: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_05e93d7e19170fd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_ecea998c6d3a3bf1" hs_bindgen_ecea998c6d3a3bf1 :: + 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:596: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_ecea998c6d3a3bf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_a3d88b0d17e3484c" hs_bindgen_a3d88b0d17e3484c :: + 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:602: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_a3d88b0d17e3484c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_c8ffcfc1c76aa0cd" hs_bindgen_c8ffcfc1c76aa0cd :: + 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:608: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_c8ffcfc1c76aa0cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_fe275cb1436fe80b" hs_bindgen_fe275cb1436fe80b :: + 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:613: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_fe275cb1436fe80b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_38a3514c724d2967" hs_bindgen_38a3514c724d2967 :: + 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:623: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_38a3514c724d2967 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_d4a6bb785b7c0bc2" hs_bindgen_d4a6bb785b7c0bc2 :: + 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:628: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_d4a6bb785b7c0bc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_56a5f6128dced7ff" hs_bindgen_56a5f6128dced7ff :: + 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:633: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_56a5f6128dced7ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_35b5131f380c92d3" hs_bindgen_35b5131f380c92d3 :: + 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:660: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_35b5131f380c92d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_6c41b65d1cddad13" hs_bindgen_6c41b65d1cddad13 :: + 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:672: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_6c41b65d1cddad13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_65b590f1a4d611f1" hs_bindgen_65b590f1a4d611f1 :: + 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:678: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_65b590f1a4d611f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_4b5b529bc5f45456" hs_bindgen_4b5b529bc5f45456 :: + 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:697: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_4b5b529bc5f45456 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_64bdc82a9f2ab41d" hs_bindgen_64bdc82a9f2ab41d :: + 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:730: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_64bdc82a9f2ab41d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_42a40d3219fb445f" hs_bindgen_42a40d3219fb445f :: + 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:754: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_42a40d3219fb445f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_5f74155639311c96" hs_bindgen_5f74155639311c96 :: + 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:781: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_5f74155639311c96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_fb8c27a5dba7228b" hs_bindgen_fb8c27a5dba7228b :: + 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:800: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_fb8c27a5dba7228b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_5a00782518890d06" hs_bindgen_5a00782518890d06 :: + 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:823: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_5a00782518890d06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_ff50458a3ba9b9fc" hs_bindgen_ff50458a3ba9b9fc :: + 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:841: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_ff50458a3ba9b9fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_9ad624e61b9942ae" hs_bindgen_9ad624e61b9942ae :: + 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:847: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_9ad624e61b9942ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_14e91f519a6d6726" hs_bindgen_14e91f519a6d6726 :: + 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:853: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_14e91f519a6d6726 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_b29a7f3742d2b41e" hs_bindgen_b29a7f3742d2b41e :: + 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:858: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_b29a7f3742d2b41e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_a8008629f703c244" hs_bindgen_a8008629f703c244 :: + 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:864: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_a8008629f703c244 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_a7a20ab09577aa70" hs_bindgen_a7a20ab09577aa70 :: + 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:870: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_a7a20ab09577aa70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_eb4a60e8dd0ed375" hs_bindgen_eb4a60e8dd0ed375 :: + 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:876: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_eb4a60e8dd0ed375 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_3e5dfa2d36b5b30f" hs_bindgen_3e5dfa2d36b5b30f :: + 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:884: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_3e5dfa2d36b5b30f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_915bd5aadfcd9357" hs_bindgen_915bd5aadfcd9357 :: + 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:894: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_915bd5aadfcd9357 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_937b75919ff2cd25" hs_bindgen_937b75919ff2cd25 :: + 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:907: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_937b75919ff2cd25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_711d16efee5d603a" hs_bindgen_711d16efee5d603a :: + 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:913: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_711d16efee5d603a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_3de0860678a6b714" hs_bindgen_3de0860678a6b714 :: + 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:918: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_3de0860678a6b714 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_1e9032c344bfef93" hs_bindgen_1e9032c344bfef93 :: + 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:923: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_1e9032c344bfef93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_bcf020c9422ac893" hs_bindgen_bcf020c9422ac893 :: + 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:928: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_bcf020c9422ac893 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_5162afa6ff1d9e8f" hs_bindgen_5162afa6ff1d9e8f :: + 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:933: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_5162afa6ff1d9e8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_653c13958a76d898" hs_bindgen_653c13958a76d898 :: + 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:938: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_653c13958a76d898 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_d7206ed891307181" hs_bindgen_d7206ed891307181 :: + 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:943: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_d7206ed891307181 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_eca36dc688d322c2" hs_bindgen_eca36dc688d322c2 :: + 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:949: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_eca36dc688d322c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_4d99a2ed9a354186" hs_bindgen_4d99a2ed9a354186 :: + 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:954: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_4d99a2ed9a354186 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_f7a51bc04eb87223" hs_bindgen_f7a51bc04eb87223 :: + 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:959: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_f7a51bc04eb87223 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_bcaddf4a42bf1db2" hs_bindgen_bcaddf4a42bf1db2 :: + 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:964: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_bcaddf4a42bf1db2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_95ab527261a61331" hs_bindgen_95ab527261a61331 :: + 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:969: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_95ab527261a61331 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_d8330306d2d3ad6f" hs_bindgen_d8330306d2d3ad6f :: + 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:974: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_d8330306d2d3ad6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_8bda0ab9a0d67547" hs_bindgen_8bda0ab9a0d67547 :: + 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:981: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_8bda0ab9a0d67547 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_115d2232d0c5cb9f" hs_bindgen_115d2232d0c5cb9f :: + 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:986: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_115d2232d0c5cb9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_b6fa8dbf3ee85e04" hs_bindgen_b6fa8dbf3ee85e04 :: + 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:988: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_b6fa8dbf3ee85e04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_d6d09d481ed026d5" hs_bindgen_d6d09d481ed026d5 :: + 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:990: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_d6d09d481ed026d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_f04002203450a495" hs_bindgen_f04002203450a495 :: + 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:992: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_f04002203450a495 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_c01110825e2c381b" hs_bindgen_c01110825e2c381b :: + 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:993: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_c01110825e2c381b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_0cd87796bc392aed" hs_bindgen_0cd87796bc392aed :: + 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:995: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_0cd87796bc392aed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_cfebf611e31b490a" hs_bindgen_cfebf611e31b490a :: + 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:996: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_cfebf611e31b490a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_b49d9be607b54288" hs_bindgen_b49d9be607b54288 :: + 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:998: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_b49d9be607b54288 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_b79cca7052c9b811" hs_bindgen_b79cca7052c9b811 :: + 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:999: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_b79cca7052c9b811 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_ea3936ca07ad3ab3" hs_bindgen_ea3936ca07ad3ab3 :: + 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:1000: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_ea3936ca07ad3ab3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_2a1e81d3113894ef" hs_bindgen_2a1e81d3113894ef :: + 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:1003: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_2a1e81d3113894ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_9eee77596dd11770" hs_bindgen_9eee77596dd11770 :: + 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:1006: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_9eee77596dd11770 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_f1e80586ff5bced5" hs_bindgen_f1e80586ff5bced5 :: + 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:1013: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_f1e80586ff5bced5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_162e1a0ea3512dff" hs_bindgen_162e1a0ea3512dff :: + 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:1020: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_162e1a0ea3512dff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_4875b6d92d1d5407" hs_bindgen_4875b6d92d1d5407 :: + 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:1025: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_4875b6d92d1d5407 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_8eb6fbb34bda286d" hs_bindgen_8eb6fbb34bda286d :: + 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:1029: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_8eb6fbb34bda286d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_c05c3c4e2179be69" hs_bindgen_c05c3c4e2179be69 :: + 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:1031: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_c05c3c4e2179be69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_3607c41ed87b8496" hs_bindgen_3607c41ed87b8496 :: + 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:1032: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_3607c41ed87b8496 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_57e8f502bb58d757" hs_bindgen_57e8f502bb58d757 :: + 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:1034: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_57e8f502bb58d757 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_251c47c95c2579a1" hs_bindgen_251c47c95c2579a1 :: + 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:1036: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_251c47c95c2579a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_3c315115abc1c65f" hs_bindgen_3c315115abc1c65f :: + 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:1039: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_3c315115abc1c65f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_529eafcd4e900511" hs_bindgen_529eafcd4e900511 :: + 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:1041: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_529eafcd4e900511 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_bf9ecfb0645057de" hs_bindgen_bf9ecfb0645057de :: + 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:1048: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_bf9ecfb0645057de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_71923222bb69c81e" hs_bindgen_71923222bb69c81e :: + 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:1055: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_71923222bb69c81e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_bc4d00af82369d5e" hs_bindgen_bc4d00af82369d5e :: + 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:1060: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_bc4d00af82369d5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_7f8d9b4b99fe5cb9" hs_bindgen_7f8d9b4b99fe5cb9 :: + 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:1065: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_7f8d9b4b99fe5cb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_a86ad8d51992eddd" hs_bindgen_a86ad8d51992eddd :: + 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:1083: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_a86ad8d51992eddd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_1539ea7d796f4024" hs_bindgen_1539ea7d796f4024 :: + 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:1094: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_1539ea7d796f4024 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_36ef554996354863" hs_bindgen_36ef554996354863 :: + 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:1110: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_36ef554996354863 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_30eaf8f6c801bb24" hs_bindgen_30eaf8f6c801bb24 :: + 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:1114: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_30eaf8f6c801bb24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_2099fdf3ddd59b48" hs_bindgen_2099fdf3ddd59b48 :: + 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:1117: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_2099fdf3ddd59b48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_1742091937175616" hs_bindgen_1742091937175616 :: + 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:1119: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_1742091937175616 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_bd6adacd56d4fc79" hs_bindgen_bd6adacd56d4fc79 :: + 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:1121: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_bd6adacd56d4fc79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_62bc4d6577649242" hs_bindgen_62bc4d6577649242 :: + 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:1123: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_62bc4d6577649242 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_fb0bd47bfb06db4c" hs_bindgen_fb0bd47bfb06db4c :: + 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:1125: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_fb0bd47bfb06db4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_33b93a808c87849d" hs_bindgen_33b93a808c87849d :: + 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:1145: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_33b93a808c87849d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_b2bfdd4375703749" hs_bindgen_b2bfdd4375703749 :: + 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:1167: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_b2bfdd4375703749 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_e9f86ddb4f21a975" hs_bindgen_e9f86ddb4f21a975 :: + 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:1175: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_e9f86ddb4f21a975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_553be55afd3e14fa" hs_bindgen_553be55afd3e14fa :: + 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:1180: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_553be55afd3e14fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_16b0be8e158fb195" hs_bindgen_16b0be8e158fb195 :: + 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:1193: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_16b0be8e158fb195 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_684c104abf743e06" hs_bindgen_684c104abf743e06 :: + 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:1198: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_684c104abf743e06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_ec7d09905871d8fc" hs_bindgen_ec7d09905871d8fc :: + 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:1203: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_ec7d09905871d8fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_3f021532869d6551" hs_bindgen_3f021532869d6551 :: + 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:1208: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_3f021532869d6551 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_5c54523239bdf7b6" hs_bindgen_5c54523239bdf7b6 :: + 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:1210: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_5c54523239bdf7b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_85cffb181cc7af7d" hs_bindgen_85cffb181cc7af7d :: + 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:1217: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_85cffb181cc7af7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_d0ae6cbdc980bc61" hs_bindgen_d0ae6cbdc980bc61 :: + 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:1232: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_d0ae6cbdc980bc61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_d955e58061be6969" hs_bindgen_d955e58061be6969 :: + 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:1247: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_d955e58061be6969 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_c5dab44312b11f3f" hs_bindgen_c5dab44312b11f3f :: + 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:1264: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_c5dab44312b11f3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_7a5478c2fd0cfb46" hs_bindgen_7a5478c2fd0cfb46 :: + 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:1279: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_7a5478c2fd0cfb46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_bc75fe80e0657202" hs_bindgen_bc75fe80e0657202 :: + 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:1295: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_bc75fe80e0657202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_450a95a16f56ff49" hs_bindgen_450a95a16f56ff49 :: + 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:1310: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_450a95a16f56ff49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_62bf35ea9ebb4c7a" hs_bindgen_62bf35ea9ebb4c7a :: + 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:1321: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_62bf35ea9ebb4c7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_0fe5a96661de7526" hs_bindgen_0fe5a96661de7526 :: + 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:1323: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_0fe5a96661de7526 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_d9f92dd1ee4aaa17" hs_bindgen_d9f92dd1ee4aaa17 :: + 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:1325: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_d9f92dd1ee4aaa17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_76118913981525d0" hs_bindgen_76118913981525d0 :: + 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:1330: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_76118913981525d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_a60cf933607ec2a0" hs_bindgen_a60cf933607ec2a0 :: + 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:1335: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_a60cf933607ec2a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_8d58691fc9e23db5" hs_bindgen_8d58691fc9e23db5 :: + 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:1340: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_8d58691fc9e23db5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_b91a7e36b3eea2fa" hs_bindgen_b91a7e36b3eea2fa :: + 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:1342: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_b91a7e36b3eea2fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_e20000e8e773425f" hs_bindgen_e20000e8e773425f :: + 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:1347: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_e20000e8e773425f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_00da6f046caf8a99" hs_bindgen_00da6f046caf8a99 :: + 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:1349: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_00da6f046caf8a99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_f7385b4c07267eb8" hs_bindgen_f7385b4c07267eb8 :: + 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:1352: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_f7385b4c07267eb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_f6864479481bee81" hs_bindgen_f6864479481bee81 :: + 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:1357: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_f6864479481bee81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_73f0f5354d956f33" hs_bindgen_73f0f5354d956f33 :: + 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:1362: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_73f0f5354d956f33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_776b62cb0bd7de66" hs_bindgen_776b62cb0bd7de66 :: + 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:1364: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_776b62cb0bd7de66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_1db6183d43f091db" hs_bindgen_1db6183d43f091db :: + 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:1369: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_1db6183d43f091db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_75a7f6f43bcdf84a" hs_bindgen_75a7f6f43bcdf84a :: + 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:1371: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_75a7f6f43bcdf84a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_03c365656687b17b" hs_bindgen_03c365656687b17b :: + 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:1374: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_03c365656687b17b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_a52a71b7b77bb07e" hs_bindgen_a52a71b7b77bb07e :: + 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:1376: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_a52a71b7b77bb07e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_cd68767ff7999ecb" hs_bindgen_cd68767ff7999ecb :: + 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:1378: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_cd68767ff7999ecb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_a3bbe0be4474828c" hs_bindgen_a3bbe0be4474828c :: + 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:1380: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_a3bbe0be4474828c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_d54fda0730054456" hs_bindgen_d54fda0730054456 :: + 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:1382: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_d54fda0730054456 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_962702e449497c33" hs_bindgen_962702e449497c33 :: + 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:1385: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_962702e449497c33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_2dc25df2bbe20f39" hs_bindgen_2dc25df2bbe20f39 :: + 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:1387: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_2dc25df2bbe20f39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_933e9a168940472d" hs_bindgen_933e9a168940472d :: + 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:1390: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_933e9a168940472d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_365e97a7c6c2fffc" hs_bindgen_365e97a7c6c2fffc :: + 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:1392: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_365e97a7c6c2fffc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_1aa8c61faf44adc2" hs_bindgen_1aa8c61faf44adc2 :: + 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:1398: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_1aa8c61faf44adc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_5f302b50907aae95" hs_bindgen_5f302b50907aae95 :: + 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:1401: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_5f302b50907aae95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_56e0c0b841df018b" hs_bindgen_56e0c0b841df018b :: + 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:1404: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_56e0c0b841df018b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_70efbfbf7e560092" hs_bindgen_70efbfbf7e560092 :: + 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:1407: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_70efbfbf7e560092 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_1f43ef21c8bc1581" hs_bindgen_1f43ef21c8bc1581 :: + 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:1409: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_1f43ef21c8bc1581 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_98189ad52f5db686" hs_bindgen_98189ad52f5db686 :: + 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:1411: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_98189ad52f5db686 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_7cab856fe188d617" hs_bindgen_7cab856fe188d617 :: + 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:1413: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_7cab856fe188d617 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_b20e9f8348746ae4" hs_bindgen_b20e9f8348746ae4 :: + 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:1428: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_b20e9f8348746ae4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_ebae5193c51b086e" hs_bindgen_ebae5193c51b086e :: + 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:1442: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_ebae5193c51b086e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_4137e79585d17b4a" hs_bindgen_4137e79585d17b4a :: + 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:1460: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_4137e79585d17b4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_23769e0f30edba14" hs_bindgen_23769e0f30edba14 :: + 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:1475: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_23769e0f30edba14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_125556d4cf9336ff" hs_bindgen_125556d4cf9336ff :: + 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:1481: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_125556d4cf9336ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_2d49f73033754e39" hs_bindgen_2d49f73033754e39 :: + 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:1483: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_2d49f73033754e39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_f26f1498d8a5e7bd" hs_bindgen_f26f1498d8a5e7bd :: + 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:1485: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_f26f1498d8a5e7bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_0c328383644ef8b8" hs_bindgen_0c328383644ef8b8 :: + 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:1487: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_0c328383644ef8b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_fbcba32fd2803836" hs_bindgen_fbcba32fd2803836 :: + 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:1493: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_fbcba32fd2803836 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_ba445e8dca9e3f9e" hs_bindgen_ba445e8dca9e3f9e :: + 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:1495: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_ba445e8dca9e3f9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_05de61513b4a2123" hs_bindgen_05de61513b4a2123 :: + 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:1497: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_05de61513b4a2123 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_bea2ea57c93769d1" hs_bindgen_bea2ea57c93769d1 :: + 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:1499: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_bea2ea57c93769d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_ce6c84f7127dd02a" hs_bindgen_ce6c84f7127dd02a :: + 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:1505: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_ce6c84f7127dd02a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_d4b04d6f670191a1" hs_bindgen_d4b04d6f670191a1 :: + 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:1507: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_d4b04d6f670191a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_b9749516e1676d02" hs_bindgen_b9749516e1676d02 :: + 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:1509: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_b9749516e1676d02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_0dbb1fba392a2be1" hs_bindgen_0dbb1fba392a2be1 :: + 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:1511: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_0dbb1fba392a2be1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_a3ed210ea459f16c" hs_bindgen_a3ed210ea459f16c :: + 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:1517: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_a3ed210ea459f16c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_6b539b30a4e8aabb" hs_bindgen_6b539b30a4e8aabb :: + 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:1519: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_6b539b30a4e8aabb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_323f4e93237f00cb" hs_bindgen_323f4e93237f00cb :: + 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:1521: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_323f4e93237f00cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_e6b69cb7ece21d10" hs_bindgen_e6b69cb7ece21d10 :: + 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:1523: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_e6b69cb7ece21d10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_cb970f7a7db78e1a" hs_bindgen_cb970f7a7db78e1a :: + 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:1530: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_cb970f7a7db78e1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_65999414b998c5b6" hs_bindgen_65999414b998c5b6 :: + 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:1533: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_65999414b998c5b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_87a90cc95e6d746f" hs_bindgen_87a90cc95e6d746f :: + 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:1539: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_87a90cc95e6d746f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_bbd86cac31d1eb59" hs_bindgen_bbd86cac31d1eb59 :: + 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:1541: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_bbd86cac31d1eb59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_c90b857b191c87c7" hs_bindgen_c90b857b191c87c7 :: + 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:1545: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_c90b857b191c87c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_318814816e522e49" hs_bindgen_318814816e522e49 :: + 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:1549: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_318814816e522e49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_0749532f82443fcc" hs_bindgen_0749532f82443fcc :: + 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:1556: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_0749532f82443fcc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_8357266dca16c799" hs_bindgen_8357266dca16c799 :: + 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:1559: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_8357266dca16c799 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_49e8f04e35fa7778" hs_bindgen_49e8f04e35fa7778 :: + 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:1566: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_49e8f04e35fa7778 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_dbf1b8f0409b09fb" hs_bindgen_dbf1b8f0409b09fb :: + 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:1572: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_dbf1b8f0409b09fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_c845eac9422b312d" hs_bindgen_c845eac9422b312d :: + 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:1582: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_c845eac9422b312d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_b7f8c9fd5af8b030" hs_bindgen_b7f8c9fd5af8b030 :: + 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:1585: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_b7f8c9fd5af8b030 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_f6dc95c5f38ea8fa" hs_bindgen_f6dc95c5f38ea8fa :: + 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:1592: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_f6dc95c5f38ea8fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_e56f8e0e50834ab3" hs_bindgen_e56f8e0e50834ab3 :: + 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:1595: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_e56f8e0e50834ab3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_6cc94a62c89c9b2f" hs_bindgen_6cc94a62c89c9b2f :: + 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:1601: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_6cc94a62c89c9b2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_ee4e5df429fe0e48" hs_bindgen_ee4e5df429fe0e48 :: + 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:1604: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_ee4e5df429fe0e48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_c02e6ff47debef92" hs_bindgen_c02e6ff47debef92 :: + 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:1607: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_c02e6ff47debef92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_cf7873bd78aca9b5" hs_bindgen_cf7873bd78aca9b5 :: + 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:1610: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_cf7873bd78aca9b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_3089c5ffc792c58b" hs_bindgen_3089c5ffc792c58b :: + 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:1613: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_3089c5ffc792c58b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_597834e344c05cc4" hs_bindgen_597834e344c05cc4 :: + 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:1616: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_597834e344c05cc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_a3ed07bd77009dee" hs_bindgen_a3ed07bd77009dee :: + 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:1619: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_a3ed07bd77009dee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_dc275f4ef9490142" hs_bindgen_dc275f4ef9490142 :: + 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:1623: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_dc275f4ef9490142 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_2ef62eea9d740550" hs_bindgen_2ef62eea9d740550 :: + 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:1627: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_2ef62eea9d740550 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_6a11a79c866df700" hs_bindgen_6a11a79c866df700 :: + 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:1630: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_6a11a79c866df700 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_b25d1ff0f14ad504" hs_bindgen_b25d1ff0f14ad504 :: + 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:1637: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_b25d1ff0f14ad504 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_3a5e10bb5f7bd311" hs_bindgen_3a5e10bb5f7bd311 :: + 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:1645: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_3a5e10bb5f7bd311 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_5ea4ce7d8cd74992" hs_bindgen_5ea4ce7d8cd74992 :: + 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:1650: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_5ea4ce7d8cd74992 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_21f1cfa354853c22" hs_bindgen_21f1cfa354853c22 :: + 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:1653: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_21f1cfa354853c22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_659fd5f8db84d128" hs_bindgen_659fd5f8db84d128 :: + 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:1656: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_659fd5f8db84d128 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_6775a6544efeefab" hs_bindgen_6775a6544efeefab :: + 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:1669: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_6775a6544efeefab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_0ccfbab43ab077fd" hs_bindgen_0ccfbab43ab077fd :: + 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:1674: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_0ccfbab43ab077fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_94d6fd76344aa734" hs_bindgen_94d6fd76344aa734 :: + 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:1677: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_94d6fd76344aa734 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_f7b437ab2a73a37c" hs_bindgen_f7b437ab2a73a37c :: + 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:1680: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_f7b437ab2a73a37c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_143fb307b3a6d339" hs_bindgen_143fb307b3a6d339 :: + 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:1692: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_143fb307b3a6d339 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_10f6c9eb821ccc84" hs_bindgen_10f6c9eb821ccc84 :: + 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:1697: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_10f6c9eb821ccc84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_4e9b3e633243d5dd" hs_bindgen_4e9b3e633243d5dd :: + 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:1699: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_4e9b3e633243d5dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_df5bfedfe8909f94" hs_bindgen_df5bfedfe8909f94 :: + 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:1701: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_df5bfedfe8909f94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_2276bdad4e46161d" hs_bindgen_2276bdad4e46161d :: + 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:1704: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_2276bdad4e46161d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_2f9ff65dc5e899f8" hs_bindgen_2f9ff65dc5e899f8 :: + 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:1712: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_2f9ff65dc5e899f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_fd0d8114c42bdaf6" hs_bindgen_fd0d8114c42bdaf6 :: + 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:1720: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_fd0d8114c42bdaf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_95c119c8c2a44627" hs_bindgen_95c119c8c2a44627 :: + 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:1722: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_95c119c8c2a44627 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_51168eb64a2a8842" hs_bindgen_51168eb64a2a8842 :: + 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:1723: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_51168eb64a2a8842 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_528ba6429c82cf78" hs_bindgen_528ba6429c82cf78 :: + 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:1731: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_528ba6429c82cf78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_89525d98611ef630" hs_bindgen_89525d98611ef630 :: + 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:1736: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_89525d98611ef630 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_8d8650cef1f6539c" hs_bindgen_8d8650cef1f6539c :: + 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:1738: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_8d8650cef1f6539c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_ab5f1c01c4d5cb55" hs_bindgen_ab5f1c01c4d5cb55 :: + 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:1741: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_ab5f1c01c4d5cb55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_7a37cbf5932e5f1e" hs_bindgen_7a37cbf5932e5f1e :: + 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:1743: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_7a37cbf5932e5f1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_d89265ff7d239dbe" hs_bindgen_d89265ff7d239dbe :: + 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:1746: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_d89265ff7d239dbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_c478bc9d03c18288" hs_bindgen_c478bc9d03c18288 :: + 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:1760: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_c478bc9d03c18288 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_879ab660c19a0670" hs_bindgen_879ab660c19a0670 :: + 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:1765: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_879ab660c19a0670 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_794f0c8f0e3f8506" hs_bindgen_794f0c8f0e3f8506 :: + 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:1768: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_794f0c8f0e3f8506 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_2e003f9acd0f35a4" hs_bindgen_2e003f9acd0f35a4 :: + 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:1773: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_2e003f9acd0f35a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_615b3e14642ed98a" hs_bindgen_615b3e14642ed98a :: + 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:1777: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_615b3e14642ed98a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_9b62df3417709637" hs_bindgen_9b62df3417709637 :: + 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:1790: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_9b62df3417709637 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_18ed5207d9851af0" hs_bindgen_18ed5207d9851af0 :: + 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:1795: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_18ed5207d9851af0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_fbd081278938e875" hs_bindgen_fbd081278938e875 :: + 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:1798: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_fbd081278938e875 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_b806542417871e82" hs_bindgen_b806542417871e82 :: + 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:1803: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_b806542417871e82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_561ab5322103cb3f" hs_bindgen_561ab5322103cb3f :: + 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:1816: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_561ab5322103cb3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_5ee3a139afa3ca1c" hs_bindgen_5ee3a139afa3ca1c :: + 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:1823: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_5ee3a139afa3ca1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_cb4267507ed30fcd" hs_bindgen_cb4267507ed30fcd :: + 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:1838: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_cb4267507ed30fcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_1e1ed1b406e0faf1" hs_bindgen_1e1ed1b406e0faf1 :: + 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:1853: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_1e1ed1b406e0faf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_6d5ba445e72ef7b1" hs_bindgen_6d5ba445e72ef7b1 :: + 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:1854: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_6d5ba445e72ef7b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_924a71618e0ddda6" hs_bindgen_924a71618e0ddda6 :: + 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:1859: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_924a71618e0ddda6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_3588591eb95137e0" hs_bindgen_3588591eb95137e0 :: + 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:1861: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_3588591eb95137e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_090f87b0bf296171" hs_bindgen_090f87b0bf296171 :: + 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:1864: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_090f87b0bf296171 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_2c5b6dfe433ab406" hs_bindgen_2c5b6dfe433ab406 :: + 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:1865: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_2c5b6dfe433ab406 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_c083cbda3ee5d6ff" hs_bindgen_c083cbda3ee5d6ff :: + 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:1867: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_c083cbda3ee5d6ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_da99f798e2fb3895" hs_bindgen_da99f798e2fb3895 :: + 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:1868: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_da99f798e2fb3895 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_4bd89e49d9085209" hs_bindgen_4bd89e49d9085209 :: + 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:1871: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_4bd89e49d9085209 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_fd8b6ec0574d5cd5" hs_bindgen_fd8b6ec0574d5cd5 :: + 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:1873: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_fd8b6ec0574d5cd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_3ee287ce97435b91" hs_bindgen_3ee287ce97435b91 :: + 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:1874: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_3ee287ce97435b91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_0c970ca022c847da" hs_bindgen_0c970ca022c847da :: + 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:1875: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_0c970ca022c847da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_68ce92abe727aa55" hs_bindgen_68ce92abe727aa55 :: + 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:1877: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_68ce92abe727aa55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_b1994a3ce008a28a" hs_bindgen_b1994a3ce008a28a :: + 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:1880: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_b1994a3ce008a28a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_5c566f6b7d3d6413" hs_bindgen_5c566f6b7d3d6413 :: + 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:1882: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_5c566f6b7d3d6413 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_c27431c81a294af9" hs_bindgen_c27431c81a294af9 :: + 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:1885: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_c27431c81a294af9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_125f1a4b76109acb" hs_bindgen_125f1a4b76109acb :: + 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:1889: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_125f1a4b76109acb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_0188481635650a1b" hs_bindgen_0188481635650a1b :: + 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:1892: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_0188481635650a1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_009e2665523e1cac" hs_bindgen_009e2665523e1cac :: + 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:1895: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_009e2665523e1cac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_4424acd9e45d9448" hs_bindgen_4424acd9e45d9448 :: + 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:1911: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_4424acd9e45d9448 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_214933c61541b263" hs_bindgen_214933c61541b263 :: + 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:1917: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_214933c61541b263 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_eb9409c08caa092b" hs_bindgen_eb9409c08caa092b :: + 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:1928: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_eb9409c08caa092b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_714de517741769a2" hs_bindgen_714de517741769a2 :: + 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:1943: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_714de517741769a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_6132a8b3cb3ea0a7" hs_bindgen_6132a8b3cb3ea0a7 :: + 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:1951: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_6132a8b3cb3ea0a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_4995838f65a3d8b7" hs_bindgen_4995838f65a3d8b7 :: + 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:1953: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_4995838f65a3d8b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_ddf66b328385c22a" hs_bindgen_ddf66b328385c22a :: + 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:1955: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_ddf66b328385c22a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_0e2308eed5eea6a1" hs_bindgen_0e2308eed5eea6a1 :: + 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:1961: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_0e2308eed5eea6a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_d1d430c21d4d5099" hs_bindgen_d1d430c21d4d5099 :: + 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:1968: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_d1d430c21d4d5099 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_898602bbe34defb6" hs_bindgen_898602bbe34defb6 :: + 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:1986: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_898602bbe34defb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_7d1528bd90d448de" hs_bindgen_7d1528bd90d448de :: + 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:1995: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_7d1528bd90d448de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_d7a145e85f5e9aab" hs_bindgen_d7a145e85f5e9aab :: + 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:2003: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_d7a145e85f5e9aab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_88e33e52fd5113ad" hs_bindgen_88e33e52fd5113ad :: + 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:2013: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_88e33e52fd5113ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_27de5a82a79b969d" hs_bindgen_27de5a82a79b969d :: + 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:2032: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_27de5a82a79b969d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_9b4ac373ec2dbfa7" hs_bindgen_9b4ac373ec2dbfa7 :: + 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:2039: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_9b4ac373ec2dbfa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_35cd537612157cff" hs_bindgen_35cd537612157cff :: + 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:2045: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_35cd537612157cff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_3811b7c174593c54" hs_bindgen_3811b7c174593c54 :: + 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:2051: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_3811b7c174593c54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_a75f75efd39d4326" hs_bindgen_a75f75efd39d4326 :: + 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:2064: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_a75f75efd39d4326 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_2a2d45f1fa251322" hs_bindgen_2a2d45f1fa251322 :: + 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:2072: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_2a2d45f1fa251322 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_c8e7120bbec640b0" hs_bindgen_c8e7120bbec640b0 :: + 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:2081: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_c8e7120bbec640b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_c6e75803752918f1" hs_bindgen_c6e75803752918f1 :: + 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:2092: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_c6e75803752918f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_3dae5a2c89f81d2d" hs_bindgen_3dae5a2c89f81d2d :: + 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:2103: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_3dae5a2c89f81d2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_dff6381cedc5bfc1" hs_bindgen_dff6381cedc5bfc1 :: + 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:2110: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_dff6381cedc5bfc1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_abc3397e54edcff3" hs_bindgen_abc3397e54edcff3 :: + 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:2113: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_abc3397e54edcff3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_022d1860decb2849" hs_bindgen_022d1860decb2849 :: + 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:2116: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_022d1860decb2849 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_26e1660a69c76ae4" hs_bindgen_26e1660a69c76ae4 :: + 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:2128: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_26e1660a69c76ae4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_617d344923e59204" hs_bindgen_617d344923e59204 :: + 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:2136: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_617d344923e59204 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_d1a1d9dc1343660e" hs_bindgen_d1a1d9dc1343660e :: + 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:2151: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_d1a1d9dc1343660e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_863c03b679743329" hs_bindgen_863c03b679743329 :: + 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:2170: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_863c03b679743329 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_09c3fe7115a58f08" hs_bindgen_09c3fe7115a58f08 :: + 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:2186: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_09c3fe7115a58f08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_48d529c085b79af3" hs_bindgen_48d529c085b79af3 :: + 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:2213: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_48d529c085b79af3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_aa474c5fe9c1dea4" hs_bindgen_aa474c5fe9c1dea4 :: + 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:2231: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_aa474c5fe9c1dea4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_a8480e268dabf30c" hs_bindgen_a8480e268dabf30c :: + 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:2252: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_a8480e268dabf30c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_963511b147e2ebae" hs_bindgen_963511b147e2ebae :: + 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:2273: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_963511b147e2ebae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_eff00ce3813871a6" hs_bindgen_eff00ce3813871a6 :: + 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:2298: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_eff00ce3813871a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_577e9cef7dd46f59" hs_bindgen_577e9cef7dd46f59 :: + 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:2306: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_577e9cef7dd46f59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_f82adc95b8109d68" hs_bindgen_f82adc95b8109d68 :: + 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:2316: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_f82adc95b8109d68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_88702d2797c7cb59" hs_bindgen_88702d2797c7cb59 :: + 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:2327: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_88702d2797c7cb59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_cf81f109655674c7" hs_bindgen_cf81f109655674c7 :: + 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:2339: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_cf81f109655674c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_9c8628f135161ca6" hs_bindgen_9c8628f135161ca6 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2346: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_9c8628f135161ca6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_61914af516523a68" hs_bindgen_61914af516523a68 :: + 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:2360: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_61914af516523a68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_e17987c425c91e51" hs_bindgen_e17987c425c91e51 :: + IO (Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_crypto_backend_state_destroy #-} + +{-| Frees all resouces 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:2372: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_e17987c425c91e51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_8f24c4807c9b0427" hs_bindgen_8f24c4807c9b0427 :: + 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:2383: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_8f24c4807c9b0427 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_d5e51f71415eaec8" hs_bindgen_d5e51f71415eaec8 :: + 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:2395: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_d5e51f71415eaec8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_d95f084102c704ac" hs_bindgen_d95f084102c704ac :: + 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:2402: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_d95f084102c704ac diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/Safe.hs new file mode 100644 index 00000000..d7a47e74 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/Safe.hs @@ -0,0 +1,13730 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_7_0.Safe where + +import Botan.Bindings.Generated.Botan_3_7_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_6a135315357d462a (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_06be6dfad56f868c (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_e1eaa49d565fb508 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_8f4017415c55853c (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_5c961330b2ecda71 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_3319264a9a065f54 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_a684cb6de88ff8f1 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_83539410dac1daad (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_a5b3d9083e4faba9 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_a2fb79f9de93cdcb (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_06a5ec0ccea7f805 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3b857f33b6e2c857 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_67c838e865425fa8 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_092debc2a631f07c (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1261e87167a582ee (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_02878123ea6bd620 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ef25a6263f42621b (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_615d73b7139d470d (" + , " 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_0504144f13f963b3 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_65a4298fc86d0666 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_402965ec81355798 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_24570aaf24e44e22 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ad0df153d5e2e4bd (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f75c9c39f601ea5e (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_93de43a1c6ab0c97 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3791fb0938919c6b (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6eb84af648541c11 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73e8e2391a6d26b9 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ca883c709bb05ef (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b52d9c20efa37433 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_93719018410b8f3f (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_516fcba29fbfc44a (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ca163f366502aa21 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_24307acd64d3446b (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_679c7f0b6dbf742a (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_13b225099e3960c0 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ac089397a129e60d (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9e8914aa6b74bce7 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92760ba3226cb1ba (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_352bfa8396cca551 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_fc5dcbaba281eaf7 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a98771984d0f15b0 (" + , " 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_e24481d35f3f4671 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5064f5676a419eba (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4f4f83ba62b2a31f (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3dfb1600eace4882 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23f13ecd7b18b69d (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b04bbc90f03dd0b8 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f46dec010479045 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_b403c4d5bfd48db0 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_ecada04e1d438219 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4c4b45764656bbc7 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9a5d1f3a7edde1a1 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7d3dad4419d6f77c (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bffc78a2fc1e96fc (" + , " 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_406edea4dbc4b750 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0c584fab46717a15 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_68fd675131b2bc93 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ffbd36663a8ffa45 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f8c0536d9faa91d (" + , " 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_e2e2937b8fe48faa (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_1dfdafbe4d520fe2 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a708f6f7297be50a (" + , " 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_b3b51aba57a3839c (" + , " 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_5aeaf435d0bd9e94 (" + , " 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_3f9b011800789b7c (" + , " 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_bc79024f641314f5 (" + , " 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_867091f04fc386bf (" + , " 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_71339c5aa87a5d4e (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f234adace30ff902 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7bb6951de4aecd77 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_a637468afc8a4d3e (" + , " 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_d2f2ccd2162dbf77 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_cd99b949219b7c7e (" + , " 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_4aa275e94dee9828 (" + , " 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_fb93c7d82a4e3189 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8bb1e040485c6686 (" + , " 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_52ea4ad98a2d0511 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_4978c8b3230af493 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_46e7e69ae84ac341 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc9770a2da8b8891 (" + , " 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_5325875fe06d382a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_f246daf29a5fdb3c (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e7afec7de088135 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aef939b280d37fca (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78c449caa3d9ff6e (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_acc983e4d4cec91b (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8697eb4c524ef942 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_128cbb6e9a9149b3 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1ddad785f889dc71 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_efd476c5e178fc88 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_127cb48a4a36344e (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_7df74a7659868470 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_b6d0dee6188cd754 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_b53ba4ca6f90de17 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_d2cf7ccd51008bc5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_70aa96add00fd34c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_5e8e300b3f717a75 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4b0908d0ab78abe7 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_436cfdfab5889533 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc6f0ddc9782d2b6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bf73ed1dfc858aa3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_505b00ce38f67127 (" + , " 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_f67def42cd3b2258 (" + , " 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_962a07229229f55b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d0377e9cbdf9a1d (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7484c6c88e4ff914 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_71d9cd5cb05e8015 (" + , " 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_229eac08648092d4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b44da70630bfe290 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3dcd3e23ffee87d0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e3b038e3b8cc4177 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e880dbf219104647 (" + , " 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_9e666acc6f97b403 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2e431d780a058197 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5a4ddae9cb792e36 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_238b1787b0df861c (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_43a32fcd856acf63 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3c87ff49982c7833 (" + , " 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_1911ce4a0ae0333c (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05e4ff7cb37ef711 (" + , " 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_1a12769bda651111 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b7b454ee45776c6e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f802fa3f4cb76172 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_157e0c2d35dc1657 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5726791b3ccff053 (" + , " 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_1304c3e62c4975f8 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5ce40f5406f3fa7c (" + , " 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_582709725a1a03ed (" + , " 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_e1fda4044fe3f335 (" + , " 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_120ad4f4a9ce20af (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_acc81ab4a5a7c752 (" + , " 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_eef7a431285ee9e3 (" + , " 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_24d36e3df0cd59b5 (" + , " 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_63b1269d7cd1f2e7 (" + , " 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_74d455e5a34c3aef (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_91ff0feacfe9a6bc (" + , " 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_0d7d269bc906837c (" + , " 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_a7c4313988200503 (" + , " 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_3184fae2b4d0f1de (" + , " 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_b8d8f351e840b322 (" + , " 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_a3b7ba1743b44726 (" + , " 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_53b02f43cf0a9356 (" + , " 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_97c76291a8c3f958 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b15af75dbba51762 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b596781abbf92f4d (" + , " 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_69b50e7504d6ff7b (" + , " 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_4c0fe976249cb502 (" + , " 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_7613484e2191f873 (" + , " 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_a70e3a884b05512e (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9dbdaa663f4a7152 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c5a3d71ca9959fc0 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a3b46466ce64c90 (" + , " 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_c993f9b56f311218 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_43c62db1fb5cd541 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c0a7a601a21ddf43 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2502c587f69b367e (" + , " 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_b8b8a83e886a430c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a7c79e05b5c6365f (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18533fec4804c312 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d6dd28fb3701bb9 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39b32d8af2824263 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc0d4e3eba606852 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9c6d2149ddf2d7be (" + , " 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_acff19655764679d (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7a86e175eccc717d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5824f75536f131e2 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cd8dc8a8740913c3 (" + , " 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_960ec17caa30b035 (" + , " 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_22e373995f3d06fa (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c222e3654f1fdbce (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa1f747ff634d145 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_271c2bdcdc75096d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3bc6d34d0e35b2ac (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_04ca32c5ac0e99ca (" + , " 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_715a1082886a655f (" + , " 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_4a9a5a3e67847a41 (" + , " 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_7be12027735d3937 (" + , " 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_2e1ad84df60a1bc7 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3953a03da13150f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40a4a99fb4e5ec98 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0610e73b57a4fbb8 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e88331d24c7f895b (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9509ac77acab5896 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e82a3425090f0049 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f6cf403c05296d2a (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d26e158bdf3f34c2 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_df5a6c873efff083 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52c594fc036aa32e (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e16cb303dad8df87 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6241595faeaf2747 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_954b3de30fd49a22 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05ff989aaa69070b (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f21e5fcc0128f5cf (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be0a67aaa5c39f34 (" + , " 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_41daf14a14399aa9 (" + , " 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_de517ae985e79f4a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c1ba2709640de18b (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_76299c15f0811aee (" + , " 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_7df57e88232fb967 (" + , " 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_e80222938455d70c (" + , " 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_1ae1b3542987cf7c (" + , " 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_ceabbcaef3741865 (" + , " 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_5fa0aed4ec0ca89e (" + , " 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_49be646141df308d (" + , " 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_6a9c17edf429aa9c (" + , " 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_6a0d9b5774878918 (" + , " 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_41898dcba3e5f08f (" + , " 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_89b501c6b9560adc (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_7b23769bd0ce3449 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d3a09b173133f38 (" + , " 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_4638fc0df850754b (" + , " 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_4eb8dd823dbbbed8 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_abe6f2dcdf5478f4 (" + , " 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_1b46ffce5be18919 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fefca68e25907f6b (" + , " 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_a2a8826650758587 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_10e491167b643cf2 (" + , " 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_746960d0b7167e09 (" + , " 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_aefc1a9d25e74dae (" + , " 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_f8830c59bd10b720 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e2a6a362b36f4297 (" + , " 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_dfe8c45b1638f15e (" + , " 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_b5901523abf595e2 (" + , " 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_c1790928dde3508e (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b75c82aa932d6bcb (" + , " 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_65209b08ef582bd5 (" + , " 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_59ec7cd231e372f0 (" + , " 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_1c1ffb5d29d8407c (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4b9f89bd4e5f6d0f (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_36c8396febe8e0b1 (" + , " 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_c822081dfe5108e6 (" + , " 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_cc5c78a984c87577 (" + , " 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_066f5134cd6e784c (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9f02a7efc8c2b452 (" + , " 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_37313ed491ad48b7 (" + , " 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_3f1462c7834dd24b (" + , " 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_378f9e0d6566446f (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c677022d47794202 (" + , " 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_cb21a0bc08a35551 (" + , " 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_0016e6718939fe32 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_239149a6321979d6 (" + , " 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_3b7a0c2318b5dcc9 (" + , " 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_b5f30fa9d0c81258 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_88bb7f9b89dc8dbf (" + , " 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_e9cfef35b898e488 (" + , " 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_eeb169b0ad6577c1 (" + , " 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_6386fbd52b82238b (" + , " 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_3213e0dcfa712957 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b85e90d4e38402b8 (" + , " 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_9158b16316e3a137 (" + , " 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_e201df538704330c (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfde98fe30efc91d (" + , " 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_d30db332b7b027c3 (" + , " 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_c66bd73714eff0d2 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f10de876cd36002 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34ae07a4a65ee491 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2a21a5ae3046cff2 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_06b10c0969a70977 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3df326aa1a3c72f8 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53ba660069021029 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ad8520567b92a7d2 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dccdbf143fa1dbaa (" + , " 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_f7dae0d7cf2d0601 (" + , " 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_6f2e32ec83453aed (" + , " 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_2ba7c12ab997c4b0 (" + , " 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_9becd69ff5eb4051 (" + , " 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_70e56191902735a7 (" + , " 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_27a346cfa1d5ae44 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_730d8552002452ce (" + , " 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_f6fd58852aa7bd9b (" + , " 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_dfb2112cbcf0b30e (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5053dabfef914569 (" + , " 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_bd0b5779d90661f9 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3f3145a3be8148f (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_29f7f1a0c169bc39 (" + , " 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_c3f1f3f66a792867 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_d69b2b54ed9758f8 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_13eee8095dd47f69 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_71be83428b9a6327 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_14daac74ee1c93f9 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_22e5b976e96c65fe (" + , " 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_cd29900f6acb87e7 (" + , " 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_4d63ce9c2aa16a44 (" + , " 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_d41b492d61778b02 (" + , " 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_2bfd3a7a2a628c27 (" + , " 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_a8d5f50bea0e2bef (" + , " 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_1530b54d786bd7a1 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8c20c7006688d728 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ddadabab65e3c15d (" + , " 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_bab3e54532e280a7 (" + , " 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_46438df5047d44e9 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c229226e5488f531 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c53a7fd940d12bc7 (" + , " 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_dacb7ac25dfa1d75 (" + , " 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_1cad263553f64693 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4cdb84555b162b51 (" + , " 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_ee838ef77828700b (" + , " 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_78b4182a955515a1 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_a4abadc2b5bd031c (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ba2e2c596c637428 (" + , " 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_207dfe085fc5046b (" + , " 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_ca00bd988228c8d6 (" + , " 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_7da0996954571a0e (" + , " 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_bd8762dfea407ba0 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_89a11713e7afd3ea (" + , " 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_a1ab8c9c16f93d7d (" + , " 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_d50adc72008051cc (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_847b9c03146f5a46 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_35c003860f1c4e94 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cd05478e530d06be (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ef0684fa58b3178 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e2d4548f2845fc57 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_127d8ed3a00f5684 (" + , " 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_a05488a377bf13db (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0e0ab053c3eaca6a (" + , " 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_e33086f3a97e498c (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1b8a882c5c83464f (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_6a135315357d462a" hs_bindgen_6a135315357d462a :: + 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:170: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_6a135315357d462a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_06be6dfad56f868c" hs_bindgen_06be6dfad56f868c :: + 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:179: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_06be6dfad56f868c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_e1eaa49d565fb508" hs_bindgen_e1eaa49d565fb508 :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_e1eaa49d565fb508 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_8f4017415c55853c" hs_bindgen_8f4017415c55853c :: + 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:192: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_8f4017415c55853c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_5c961330b2ecda71" hs_bindgen_5c961330b2ecda71 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_5c961330b2ecda71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_3319264a9a065f54" hs_bindgen_3319264a9a065f54 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_3319264a9a065f54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_a684cb6de88ff8f1" hs_bindgen_a684cb6de88ff8f1 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_a684cb6de88ff8f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_83539410dac1daad" hs_bindgen_83539410dac1daad :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_83539410dac1daad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_a5b3d9083e4faba9" hs_bindgen_a5b3d9083e4faba9 :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_a5b3d9083e4faba9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_a2fb79f9de93cdcb" hs_bindgen_a2fb79f9de93cdcb :: + 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:223: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_a2fb79f9de93cdcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_06a5ec0ccea7f805" hs_bindgen_06a5ec0ccea7f805 :: + 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:229: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_06a5ec0ccea7f805 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_3b857f33b6e2c857" hs_bindgen_3b857f33b6e2c857 :: + 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:235: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_3b857f33b6e2c857 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_67c838e865425fa8" hs_bindgen_67c838e865425fa8 :: + 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:247: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_67c838e865425fa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_092debc2a631f07c" hs_bindgen_092debc2a631f07c :: + 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:257: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_092debc2a631f07c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_1261e87167a582ee" hs_bindgen_1261e87167a582ee :: + 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:262:28@ + +__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_1261e87167a582ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_02878123ea6bd620" hs_bindgen_02878123ea6bd620 :: + 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:267: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_02878123ea6bd620 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_ef25a6263f42621b" hs_bindgen_ef25a6263f42621b :: + 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:286: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_ef25a6263f42621b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_615d73b7139d470d" hs_bindgen_615d73b7139d470d :: + 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:298: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_615d73b7139d470d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_0504144f13f963b3" hs_bindgen_0504144f13f963b3 :: + 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:312: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_0504144f13f963b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_65a4298fc86d0666" hs_bindgen_65a4298fc86d0666 :: + 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:320: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_65a4298fc86d0666 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_402965ec81355798" hs_bindgen_402965ec81355798 :: + 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:330: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_402965ec81355798 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_24570aaf24e44e22" hs_bindgen_24570aaf24e44e22 :: + 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:340: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_24570aaf24e44e22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_ad0df153d5e2e4bd" hs_bindgen_ad0df153d5e2e4bd :: + 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:350: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_ad0df153d5e2e4bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_f75c9c39f601ea5e" hs_bindgen_f75c9c39f601ea5e :: + 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:357: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_f75c9c39f601ea5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_93de43a1c6ab0c97" hs_bindgen_93de43a1c6ab0c97 :: + 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:371: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_93de43a1c6ab0c97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_3791fb0938919c6b" hs_bindgen_3791fb0938919c6b :: + 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:379: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_3791fb0938919c6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_6eb84af648541c11" hs_bindgen_6eb84af648541c11 :: + 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:387: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_6eb84af648541c11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_73e8e2391a6d26b9" hs_bindgen_73e8e2391a6d26b9 :: + 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:395: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_73e8e2391a6d26b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_0ca883c709bb05ef" hs_bindgen_0ca883c709bb05ef :: + 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:404: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_0ca883c709bb05ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_b52d9c20efa37433" hs_bindgen_b52d9c20efa37433 :: + 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:414: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_b52d9c20efa37433 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_93719018410b8f3f" hs_bindgen_93719018410b8f3f :: + 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:422: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_93719018410b8f3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_516fcba29fbfc44a" hs_bindgen_516fcba29fbfc44a :: + 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:429: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_516fcba29fbfc44a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_ca163f366502aa21" hs_bindgen_ca163f366502aa21 :: + 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:437: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_ca163f366502aa21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_24307acd64d3446b" hs_bindgen_24307acd64d3446b :: + 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:452: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_24307acd64d3446b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_679c7f0b6dbf742a" hs_bindgen_679c7f0b6dbf742a :: + 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:460: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_679c7f0b6dbf742a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_13b225099e3960c0" hs_bindgen_13b225099e3960c0 :: + 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:469: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_13b225099e3960c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_ac089397a129e60d" hs_bindgen_ac089397a129e60d :: + 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:478: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_ac089397a129e60d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_9e8914aa6b74bce7" hs_bindgen_9e8914aa6b74bce7 :: + 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:487: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_9e8914aa6b74bce7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_92760ba3226cb1ba" hs_bindgen_92760ba3226cb1ba :: + 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:497: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_92760ba3226cb1ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_352bfa8396cca551" hs_bindgen_352bfa8396cca551 :: + 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:505: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_352bfa8396cca551 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_fc5dcbaba281eaf7" hs_bindgen_fc5dcbaba281eaf7 :: + 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:513: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_fc5dcbaba281eaf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_a98771984d0f15b0" hs_bindgen_a98771984d0f15b0 :: + 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:523: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_a98771984d0f15b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_e24481d35f3f4671" hs_bindgen_e24481d35f3f4671 :: + 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:533: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_e24481d35f3f4671 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_5064f5676a419eba" hs_bindgen_5064f5676a419eba :: + 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:547: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_5064f5676a419eba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_4f4f83ba62b2a31f" hs_bindgen_4f4f83ba62b2a31f :: + 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:552: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_4f4f83ba62b2a31f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_3dfb1600eace4882" hs_bindgen_3dfb1600eace4882 :: + 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:557: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_3dfb1600eace4882 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_23f13ecd7b18b69d" hs_bindgen_23f13ecd7b18b69d :: + 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:562: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_23f13ecd7b18b69d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_b04bbc90f03dd0b8" hs_bindgen_b04bbc90f03dd0b8 :: + 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:567: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_b04bbc90f03dd0b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_7f46dec010479045" hs_bindgen_7f46dec010479045 :: + 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:572: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_7f46dec010479045 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_b403c4d5bfd48db0" hs_bindgen_b403c4d5bfd48db0 :: + 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:579: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_b403c4d5bfd48db0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_ecada04e1d438219" hs_bindgen_ecada04e1d438219 :: + 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:584: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_ecada04e1d438219 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_4c4b45764656bbc7" hs_bindgen_4c4b45764656bbc7 :: + 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:590: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_4c4b45764656bbc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_9a5d1f3a7edde1a1" hs_bindgen_9a5d1f3a7edde1a1 :: + 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:596: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_9a5d1f3a7edde1a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_7d3dad4419d6f77c" hs_bindgen_7d3dad4419d6f77c :: + 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:602:5@ + +__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_7d3dad4419d6f77c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_bffc78a2fc1e96fc" hs_bindgen_bffc78a2fc1e96fc :: + 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:608:5@ + +__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_bffc78a2fc1e96fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_406edea4dbc4b750" hs_bindgen_406edea4dbc4b750 :: + 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:613: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_406edea4dbc4b750 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_0c584fab46717a15" hs_bindgen_0c584fab46717a15 :: + 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:623:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_0c584fab46717a15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_68fd675131b2bc93" hs_bindgen_68fd675131b2bc93 :: + 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:628: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_68fd675131b2bc93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_ffbd36663a8ffa45" hs_bindgen_ffbd36663a8ffa45 :: + 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:633: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_ffbd36663a8ffa45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_2f8c0536d9faa91d" hs_bindgen_2f8c0536d9faa91d :: + 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_2f8c0536d9faa91d + +{-| + + 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:660: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_2f8c0536d9faa91d x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_e2e2937b8fe48faa" hs_bindgen_e2e2937b8fe48faa :: + 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:672:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_e2e2937b8fe48faa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_1dfdafbe4d520fe2" hs_bindgen_1dfdafbe4d520fe2 :: + 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:678:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_1dfdafbe4d520fe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_a708f6f7297be50a" hs_bindgen_a708f6f7297be50a :: + 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_a708f6f7297be50a + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:697: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_a708f6f7297be50a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_b3b51aba57a3839c" hs_bindgen_b3b51aba57a3839c :: + 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_b3b51aba57a3839c + +{-| 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:730: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_b3b51aba57a3839c x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_5aeaf435d0bd9e94" hs_bindgen_5aeaf435d0bd9e94 :: + 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_5aeaf435d0bd9e94 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:754: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_5aeaf435d0bd9e94 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_3f9b011800789b7c" hs_bindgen_3f9b011800789b7c :: + 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_3f9b011800789b7c + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:781: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_3f9b011800789b7c x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_bc79024f641314f5" hs_bindgen_bc79024f641314f5 :: + 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_bc79024f641314f5 + +{-| 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:800: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_bc79024f641314f5 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_867091f04fc386bf" hs_bindgen_867091f04fc386bf :: + 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_867091f04fc386bf + +{-| 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:823: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_867091f04fc386bf 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_7_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_71339c5aa87a5d4e" hs_bindgen_71339c5aa87a5d4e :: + 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:841: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_71339c5aa87a5d4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_f234adace30ff902" hs_bindgen_f234adace30ff902 :: + 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:847: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_f234adace30ff902 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_7bb6951de4aecd77" hs_bindgen_7bb6951de4aecd77 :: + 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:853: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_7bb6951de4aecd77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_a637468afc8a4d3e" hs_bindgen_a637468afc8a4d3e :: + 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_a637468afc8a4d3e + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:858: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_a637468afc8a4d3e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_d2f2ccd2162dbf77" hs_bindgen_d2f2ccd2162dbf77 :: + 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:864: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_d2f2ccd2162dbf77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_cd99b949219b7c7e" hs_bindgen_cd99b949219b7c7e :: + 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_cd99b949219b7c7e + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:870: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_cd99b949219b7c7e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_4aa275e94dee9828" hs_bindgen_4aa275e94dee9828 :: + 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_4aa275e94dee9828 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:876: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_4aa275e94dee9828 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_fb93c7d82a4e3189" hs_bindgen_fb93c7d82a4e3189 :: + 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:884: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_fb93c7d82a4e3189 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_8bb1e040485c6686" hs_bindgen_8bb1e040485c6686 :: + 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:894: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_8bb1e040485c6686 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_52ea4ad98a2d0511" hs_bindgen_52ea4ad98a2d0511 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:907: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_52ea4ad98a2d0511 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_4978c8b3230af493" hs_bindgen_4978c8b3230af493 :: + 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:913:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_4978c8b3230af493 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_46e7e69ae84ac341" hs_bindgen_46e7e69ae84ac341 :: + 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:918: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_46e7e69ae84ac341 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_fc9770a2da8b8891" hs_bindgen_fc9770a2da8b8891 :: + 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:923:28@ + +__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_fc9770a2da8b8891 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_5325875fe06d382a" hs_bindgen_5325875fe06d382a :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:928:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_5325875fe06d382a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_f246daf29a5fdb3c" hs_bindgen_f246daf29a5fdb3c :: + 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:933: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_f246daf29a5fdb3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_3e7afec7de088135" hs_bindgen_3e7afec7de088135 :: + 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:938: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_3e7afec7de088135 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_aef939b280d37fca" hs_bindgen_aef939b280d37fca :: + 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:943: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_aef939b280d37fca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_78c449caa3d9ff6e" hs_bindgen_78c449caa3d9ff6e :: + 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:949: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_78c449caa3d9ff6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_acc983e4d4cec91b" hs_bindgen_acc983e4d4cec91b :: + 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:954: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_acc983e4d4cec91b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_8697eb4c524ef942" hs_bindgen_8697eb4c524ef942 :: + 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:959: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_8697eb4c524ef942 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_128cbb6e9a9149b3" hs_bindgen_128cbb6e9a9149b3 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:964: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_128cbb6e9a9149b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_1ddad785f889dc71" hs_bindgen_1ddad785f889dc71 :: + 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_1ddad785f889dc71 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:969: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_1ddad785f889dc71 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_efd476c5e178fc88" hs_bindgen_efd476c5e178fc88 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:974: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_efd476c5e178fc88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_127cb48a4a36344e" hs_bindgen_127cb48a4a36344e :: + 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:981: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_127cb48a4a36344e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_7df74a7659868470" hs_bindgen_7df74a7659868470 :: + 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:986: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_7df74a7659868470 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_b6d0dee6188cd754" hs_bindgen_b6d0dee6188cd754 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:988: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_b6d0dee6188cd754 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_b53ba4ca6f90de17" hs_bindgen_b53ba4ca6f90de17 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:990: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_b53ba4ca6f90de17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_d2cf7ccd51008bc5" hs_bindgen_d2cf7ccd51008bc5 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:992: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_d2cf7ccd51008bc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_70aa96add00fd34c" hs_bindgen_70aa96add00fd34c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:993: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_70aa96add00fd34c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_5e8e300b3f717a75" hs_bindgen_5e8e300b3f717a75 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:995: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_5e8e300b3f717a75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_4b0908d0ab78abe7" hs_bindgen_4b0908d0ab78abe7 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:996: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_4b0908d0ab78abe7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_436cfdfab5889533" hs_bindgen_436cfdfab5889533 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:998: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_436cfdfab5889533 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_cc6f0ddc9782d2b6" hs_bindgen_cc6f0ddc9782d2b6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:999: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_cc6f0ddc9782d2b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_bf73ed1dfc858aa3" hs_bindgen_bf73ed1dfc858aa3 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1000: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_bf73ed1dfc858aa3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_505b00ce38f67127" hs_bindgen_505b00ce38f67127 :: + 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:1003: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_505b00ce38f67127 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_f67def42cd3b2258" hs_bindgen_f67def42cd3b2258 :: + 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:1006: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_f67def42cd3b2258 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_962a07229229f55b" hs_bindgen_962a07229229f55b :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1013: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_962a07229229f55b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_0d0377e9cbdf9a1d" hs_bindgen_0d0377e9cbdf9a1d :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1020: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_0d0377e9cbdf9a1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_7484c6c88e4ff914" hs_bindgen_7484c6c88e4ff914 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1025: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_7484c6c88e4ff914 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_71d9cd5cb05e8015" hs_bindgen_71d9cd5cb05e8015 :: + 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:1029: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_71d9cd5cb05e8015 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_229eac08648092d4" hs_bindgen_229eac08648092d4 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1031: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_229eac08648092d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_b44da70630bfe290" hs_bindgen_b44da70630bfe290 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1032: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_b44da70630bfe290 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_3dcd3e23ffee87d0" hs_bindgen_3dcd3e23ffee87d0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1034: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_3dcd3e23ffee87d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_e3b038e3b8cc4177" hs_bindgen_e3b038e3b8cc4177 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1036: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_e3b038e3b8cc4177 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_e880dbf219104647" hs_bindgen_e880dbf219104647 :: + 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:1039: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_e880dbf219104647 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_9e666acc6f97b403" hs_bindgen_9e666acc6f97b403 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1041: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_9e666acc6f97b403 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_2e431d780a058197" hs_bindgen_2e431d780a058197 :: + 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:1048: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_2e431d780a058197 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_5a4ddae9cb792e36" hs_bindgen_5a4ddae9cb792e36 :: + 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:1055: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_5a4ddae9cb792e36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_238b1787b0df861c" hs_bindgen_238b1787b0df861c :: + 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:1060: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_238b1787b0df861c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_43a32fcd856acf63" hs_bindgen_43a32fcd856acf63 :: + 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:1065: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_43a32fcd856acf63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_3c87ff49982c7833" hs_bindgen_3c87ff49982c7833 :: + 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:1083: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_3c87ff49982c7833 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_1911ce4a0ae0333c" hs_bindgen_1911ce4a0ae0333c :: + 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:1094: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_1911ce4a0ae0333c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_05e4ff7cb37ef711" hs_bindgen_05e4ff7cb37ef711 :: + 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:1110: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_05e4ff7cb37ef711 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_1a12769bda651111" hs_bindgen_1a12769bda651111 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1114: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_1a12769bda651111 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_b7b454ee45776c6e" hs_bindgen_b7b454ee45776c6e :: + 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:1117: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_b7b454ee45776c6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_f802fa3f4cb76172" hs_bindgen_f802fa3f4cb76172 :: + 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:1119: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_f802fa3f4cb76172 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_157e0c2d35dc1657" hs_bindgen_157e0c2d35dc1657 :: + 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:1121: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_157e0c2d35dc1657 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_5726791b3ccff053" hs_bindgen_5726791b3ccff053 :: + 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:1123: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_5726791b3ccff053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_1304c3e62c4975f8" hs_bindgen_1304c3e62c4975f8 :: + 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:1125: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_1304c3e62c4975f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_5ce40f5406f3fa7c" hs_bindgen_5ce40f5406f3fa7c :: + 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:1145: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_5ce40f5406f3fa7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_582709725a1a03ed" hs_bindgen_582709725a1a03ed :: + 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:1167: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_582709725a1a03ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_e1fda4044fe3f335" hs_bindgen_e1fda4044fe3f335 :: + 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_e1fda4044fe3f335 + +{-| 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:1175: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_e1fda4044fe3f335 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_120ad4f4a9ce20af" hs_bindgen_120ad4f4a9ce20af :: + 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:1180:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_120ad4f4a9ce20af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_acc81ab4a5a7c752" hs_bindgen_acc81ab4a5a7c752 :: + 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:1193: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_acc81ab4a5a7c752 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_eef7a431285ee9e3" hs_bindgen_eef7a431285ee9e3 :: + 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:1198: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_eef7a431285ee9e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_24d36e3df0cd59b5" hs_bindgen_24d36e3df0cd59b5 :: + 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:1203: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_24d36e3df0cd59b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_63b1269d7cd1f2e7" hs_bindgen_63b1269d7cd1f2e7 :: + 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:1208: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_63b1269d7cd1f2e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_74d455e5a34c3aef" hs_bindgen_74d455e5a34c3aef :: + 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:1210: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_74d455e5a34c3aef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_91ff0feacfe9a6bc" hs_bindgen_91ff0feacfe9a6bc :: + 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:1217: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_91ff0feacfe9a6bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_0d7d269bc906837c" hs_bindgen_0d7d269bc906837c :: + 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:1232: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_0d7d269bc906837c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_a7c4313988200503" hs_bindgen_a7c4313988200503 :: + 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:1247: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_a7c4313988200503 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_3184fae2b4d0f1de" hs_bindgen_3184fae2b4d0f1de :: + 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:1264: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_3184fae2b4d0f1de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_b8d8f351e840b322" hs_bindgen_b8d8f351e840b322 :: + 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:1279: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_b8d8f351e840b322 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_a3b7ba1743b44726" hs_bindgen_a3b7ba1743b44726 :: + 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:1295: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_a3b7ba1743b44726 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_53b02f43cf0a9356" hs_bindgen_53b02f43cf0a9356 :: + 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:1310: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_53b02f43cf0a9356 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_97c76291a8c3f958" hs_bindgen_97c76291a8c3f958 :: + 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_97c76291a8c3f958 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1321: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_97c76291a8c3f958 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_b15af75dbba51762" hs_bindgen_b15af75dbba51762 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1323: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_b15af75dbba51762 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_b596781abbf92f4d" hs_bindgen_b596781abbf92f4d :: + 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:1325: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_b596781abbf92f4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_69b50e7504d6ff7b" hs_bindgen_69b50e7504d6ff7b :: + 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:1330: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_69b50e7504d6ff7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_4c0fe976249cb502" hs_bindgen_4c0fe976249cb502 :: + 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:1335: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_4c0fe976249cb502 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_7613484e2191f873" hs_bindgen_7613484e2191f873 :: + 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:1340: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_7613484e2191f873 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_a70e3a884b05512e" hs_bindgen_a70e3a884b05512e :: + 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:1342: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_a70e3a884b05512e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_9dbdaa663f4a7152" hs_bindgen_9dbdaa663f4a7152 :: + 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:1347: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_9dbdaa663f4a7152 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_c5a3d71ca9959fc0" hs_bindgen_c5a3d71ca9959fc0 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1349: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_c5a3d71ca9959fc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_3a3b46466ce64c90" hs_bindgen_3a3b46466ce64c90 :: + 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:1352: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_3a3b46466ce64c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_c993f9b56f311218" hs_bindgen_c993f9b56f311218 :: + 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:1357:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_c993f9b56f311218 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_43c62db1fb5cd541" hs_bindgen_43c62db1fb5cd541 :: + 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:1362: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_43c62db1fb5cd541 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_c0a7a601a21ddf43" hs_bindgen_c0a7a601a21ddf43 :: + 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:1364: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_c0a7a601a21ddf43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_2502c587f69b367e" hs_bindgen_2502c587f69b367e :: + 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:1369: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_2502c587f69b367e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_b8b8a83e886a430c" hs_bindgen_b8b8a83e886a430c :: + 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_b8b8a83e886a430c + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1371: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_b8b8a83e886a430c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_a7c79e05b5c6365f" hs_bindgen_a7c79e05b5c6365f :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1374: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_a7c79e05b5c6365f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_18533fec4804c312" hs_bindgen_18533fec4804c312 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1376: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_18533fec4804c312 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_0d6dd28fb3701bb9" hs_bindgen_0d6dd28fb3701bb9 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1378: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_0d6dd28fb3701bb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_39b32d8af2824263" hs_bindgen_39b32d8af2824263 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1380: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_39b32d8af2824263 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_bc0d4e3eba606852" hs_bindgen_bc0d4e3eba606852 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1382: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_bc0d4e3eba606852 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_9c6d2149ddf2d7be" hs_bindgen_9c6d2149ddf2d7be :: + 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:1385: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_9c6d2149ddf2d7be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_acff19655764679d" hs_bindgen_acff19655764679d :: + 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:1387: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_acff19655764679d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_7a86e175eccc717d" hs_bindgen_7a86e175eccc717d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1390: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_7a86e175eccc717d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_5824f75536f131e2" hs_bindgen_5824f75536f131e2 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1392: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_5824f75536f131e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_cd8dc8a8740913c3" hs_bindgen_cd8dc8a8740913c3 :: + 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:1398: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_cd8dc8a8740913c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_960ec17caa30b035" hs_bindgen_960ec17caa30b035 :: + 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:1401: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_960ec17caa30b035 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_22e373995f3d06fa" hs_bindgen_22e373995f3d06fa :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1404: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_22e373995f3d06fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_c222e3654f1fdbce" hs_bindgen_c222e3654f1fdbce :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1407: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_c222e3654f1fdbce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_aa1f747ff634d145" hs_bindgen_aa1f747ff634d145 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1409: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_aa1f747ff634d145 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_271c2bdcdc75096d" hs_bindgen_271c2bdcdc75096d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1411: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_271c2bdcdc75096d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_3bc6d34d0e35b2ac" hs_bindgen_3bc6d34d0e35b2ac :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1413: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_3bc6d34d0e35b2ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_04ca32c5ac0e99ca" hs_bindgen_04ca32c5ac0e99ca :: + 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:1428: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_04ca32c5ac0e99ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_715a1082886a655f" hs_bindgen_715a1082886a655f :: + 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:1442: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_715a1082886a655f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_4a9a5a3e67847a41" hs_bindgen_4a9a5a3e67847a41 :: + 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:1460: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_4a9a5a3e67847a41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_7be12027735d3937" hs_bindgen_7be12027735d3937 :: + 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:1475: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_7be12027735d3937 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_2e1ad84df60a1bc7" hs_bindgen_2e1ad84df60a1bc7 :: + 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_2e1ad84df60a1bc7 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_2e1ad84df60a1bc7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_a3953a03da13150f" hs_bindgen_a3953a03da13150f :: + 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_a3953a03da13150f + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1483: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_a3953a03da13150f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_40a4a99fb4e5ec98" hs_bindgen_40a4a99fb4e5ec98 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1485: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_40a4a99fb4e5ec98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_0610e73b57a4fbb8" hs_bindgen_0610e73b57a4fbb8 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1487: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_0610e73b57a4fbb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_e88331d24c7f895b" hs_bindgen_e88331d24c7f895b :: + 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_e88331d24c7f895b + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_e88331d24c7f895b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_9509ac77acab5896" hs_bindgen_9509ac77acab5896 :: + 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_9509ac77acab5896 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1495: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_9509ac77acab5896 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_e82a3425090f0049" hs_bindgen_e82a3425090f0049 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1497: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_e82a3425090f0049 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_f6cf403c05296d2a" hs_bindgen_f6cf403c05296d2a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1499: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_f6cf403c05296d2a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_d26e158bdf3f34c2" hs_bindgen_d26e158bdf3f34c2 :: + 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_d26e158bdf3f34c2 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_d26e158bdf3f34c2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_df5a6c873efff083" hs_bindgen_df5a6c873efff083 :: + 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_df5a6c873efff083 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1507: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_df5a6c873efff083 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_52c594fc036aa32e" hs_bindgen_52c594fc036aa32e :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1509: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_52c594fc036aa32e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_e16cb303dad8df87" hs_bindgen_e16cb303dad8df87 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1511: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_e16cb303dad8df87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_6241595faeaf2747" hs_bindgen_6241595faeaf2747 :: + 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_6241595faeaf2747 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_6241595faeaf2747 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_954b3de30fd49a22" hs_bindgen_954b3de30fd49a22 :: + 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_954b3de30fd49a22 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1519: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_954b3de30fd49a22 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_05ff989aaa69070b" hs_bindgen_05ff989aaa69070b :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1521: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_05ff989aaa69070b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_f21e5fcc0128f5cf" hs_bindgen_f21e5fcc0128f5cf :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1523: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_f21e5fcc0128f5cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_be0a67aaa5c39f34" hs_bindgen_be0a67aaa5c39f34 :: + 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_be0a67aaa5c39f34 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1530: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_be0a67aaa5c39f34 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_41daf14a14399aa9" hs_bindgen_41daf14a14399aa9 :: + 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_41daf14a14399aa9 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1533: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_41daf14a14399aa9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_de517ae985e79f4a" hs_bindgen_de517ae985e79f4a :: + 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_de517ae985e79f4a + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_de517ae985e79f4a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_c1ba2709640de18b" hs_bindgen_c1ba2709640de18b :: + 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_c1ba2709640de18b + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1541: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_c1ba2709640de18b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_76299c15f0811aee" hs_bindgen_76299c15f0811aee :: + 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:1545: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_76299c15f0811aee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_7df57e88232fb967" hs_bindgen_7df57e88232fb967 :: + 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:1549: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_7df57e88232fb967 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_e80222938455d70c" hs_bindgen_e80222938455d70c :: + 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_e80222938455d70c + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1556: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_e80222938455d70c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_1ae1b3542987cf7c" hs_bindgen_1ae1b3542987cf7c :: + 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_1ae1b3542987cf7c + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1559: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_1ae1b3542987cf7c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_ceabbcaef3741865" hs_bindgen_ceabbcaef3741865 :: + 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_ceabbcaef3741865 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1566: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_ceabbcaef3741865 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_5fa0aed4ec0ca89e" hs_bindgen_5fa0aed4ec0ca89e :: + 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_5fa0aed4ec0ca89e + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1572: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_5fa0aed4ec0ca89e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_49be646141df308d" hs_bindgen_49be646141df308d :: + 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_49be646141df308d + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1582: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_49be646141df308d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_6a9c17edf429aa9c" hs_bindgen_6a9c17edf429aa9c :: + 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_6a9c17edf429aa9c + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1585: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_6a9c17edf429aa9c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_6a0d9b5774878918" hs_bindgen_6a0d9b5774878918 :: + 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_6a0d9b5774878918 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1592: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_6a0d9b5774878918 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_41898dcba3e5f08f" hs_bindgen_41898dcba3e5f08f :: + 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_41898dcba3e5f08f + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1595: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_41898dcba3e5f08f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_89b501c6b9560adc" hs_bindgen_89b501c6b9560adc :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1601: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_89b501c6b9560adc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_7b23769bd0ce3449" hs_bindgen_7b23769bd0ce3449 :: + 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:1604: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_7b23769bd0ce3449 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_1d3a09b173133f38" hs_bindgen_1d3a09b173133f38 :: + 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:1607: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_1d3a09b173133f38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_4638fc0df850754b" hs_bindgen_4638fc0df850754b :: + 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:1610: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_4638fc0df850754b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_4eb8dd823dbbbed8" hs_bindgen_4eb8dd823dbbbed8 :: + 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:1613: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_4eb8dd823dbbbed8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_abe6f2dcdf5478f4" hs_bindgen_abe6f2dcdf5478f4 :: + 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:1616: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_abe6f2dcdf5478f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_1b46ffce5be18919" hs_bindgen_1b46ffce5be18919 :: + 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:1619: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_1b46ffce5be18919 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_fefca68e25907f6b" hs_bindgen_fefca68e25907f6b :: + 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:1623: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_fefca68e25907f6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_a2a8826650758587" hs_bindgen_a2a8826650758587 :: + 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:1627: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_a2a8826650758587 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_10e491167b643cf2" hs_bindgen_10e491167b643cf2 :: + 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:1630: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_10e491167b643cf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_746960d0b7167e09" hs_bindgen_746960d0b7167e09 :: + 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:1637: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_746960d0b7167e09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_aefc1a9d25e74dae" hs_bindgen_aefc1a9d25e74dae :: + 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:1645: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_aefc1a9d25e74dae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_f8830c59bd10b720" hs_bindgen_f8830c59bd10b720 :: + 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:1650: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_f8830c59bd10b720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_e2a6a362b36f4297" hs_bindgen_e2a6a362b36f4297 :: + 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:1653: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_e2a6a362b36f4297 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_dfe8c45b1638f15e" hs_bindgen_dfe8c45b1638f15e :: + 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_dfe8c45b1638f15e + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1656: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_dfe8c45b1638f15e x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_b5901523abf595e2" hs_bindgen_b5901523abf595e2 :: + 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:1669: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_b5901523abf595e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_c1790928dde3508e" hs_bindgen_c1790928dde3508e :: + 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:1674: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_c1790928dde3508e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_b75c82aa932d6bcb" hs_bindgen_b75c82aa932d6bcb :: + 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:1677: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_b75c82aa932d6bcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_65209b08ef582bd5" hs_bindgen_65209b08ef582bd5 :: + 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_65209b08ef582bd5 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1680: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_65209b08ef582bd5 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_59ec7cd231e372f0" hs_bindgen_59ec7cd231e372f0 :: + 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:1692: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_59ec7cd231e372f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_1c1ffb5d29d8407c" hs_bindgen_1c1ffb5d29d8407c :: + 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:1697: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_1c1ffb5d29d8407c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_4b9f89bd4e5f6d0f" hs_bindgen_4b9f89bd4e5f6d0f :: + 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:1699: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_4b9f89bd4e5f6d0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_36c8396febe8e0b1" hs_bindgen_36c8396febe8e0b1 :: + 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_36c8396febe8e0b1 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1701: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_36c8396febe8e0b1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_c822081dfe5108e6" hs_bindgen_c822081dfe5108e6 :: + 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:1704: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_c822081dfe5108e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_cc5c78a984c87577" hs_bindgen_cc5c78a984c87577 :: + 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:1712: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_cc5c78a984c87577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_066f5134cd6e784c" hs_bindgen_066f5134cd6e784c :: + 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:1720: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_066f5134cd6e784c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_9f02a7efc8c2b452" hs_bindgen_9f02a7efc8c2b452 :: + 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_9f02a7efc8c2b452 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1722: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_9f02a7efc8c2b452 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_37313ed491ad48b7" hs_bindgen_37313ed491ad48b7 :: + 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_37313ed491ad48b7 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1723: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_37313ed491ad48b7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_3f1462c7834dd24b" hs_bindgen_3f1462c7834dd24b :: + 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:1731: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_3f1462c7834dd24b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_378f9e0d6566446f" hs_bindgen_378f9e0d6566446f :: + 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:1736: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_378f9e0d6566446f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_c677022d47794202" hs_bindgen_c677022d47794202 :: + 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:1738: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_c677022d47794202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_cb21a0bc08a35551" hs_bindgen_cb21a0bc08a35551 :: + 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:1741: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_cb21a0bc08a35551 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_0016e6718939fe32" hs_bindgen_0016e6718939fe32 :: + 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:1743: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_0016e6718939fe32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_239149a6321979d6" hs_bindgen_239149a6321979d6 :: + 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_239149a6321979d6 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1746: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_239149a6321979d6 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_3b7a0c2318b5dcc9" hs_bindgen_3b7a0c2318b5dcc9 :: + 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:1760: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_3b7a0c2318b5dcc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_b5f30fa9d0c81258" hs_bindgen_b5f30fa9d0c81258 :: + 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:1765: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_b5f30fa9d0c81258 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_88bb7f9b89dc8dbf" hs_bindgen_88bb7f9b89dc8dbf :: + 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:1768: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_88bb7f9b89dc8dbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_e9cfef35b898e488" hs_bindgen_e9cfef35b898e488 :: + 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:1773: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_e9cfef35b898e488 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_eeb169b0ad6577c1" hs_bindgen_eeb169b0ad6577c1 :: + 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_eeb169b0ad6577c1 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1777: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_eeb169b0ad6577c1 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_6386fbd52b82238b" hs_bindgen_6386fbd52b82238b :: + 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:1790: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_6386fbd52b82238b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_3213e0dcfa712957" hs_bindgen_3213e0dcfa712957 :: + 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:1795: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_3213e0dcfa712957 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_b85e90d4e38402b8" hs_bindgen_b85e90d4e38402b8 :: + 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:1798: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_b85e90d4e38402b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_9158b16316e3a137" hs_bindgen_9158b16316e3a137 :: + 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_9158b16316e3a137 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1803: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_9158b16316e3a137 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_e201df538704330c" hs_bindgen_e201df538704330c :: + 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:1816: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_e201df538704330c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_dfde98fe30efc91d" hs_bindgen_dfde98fe30efc91d :: + 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_dfde98fe30efc91d + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1823: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_dfde98fe30efc91d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_d30db332b7b027c3" hs_bindgen_d30db332b7b027c3 :: + 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_d30db332b7b027c3 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1838: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_d30db332b7b027c3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_c66bd73714eff0d2" hs_bindgen_c66bd73714eff0d2 :: + 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_c66bd73714eff0d2 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1853: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_c66bd73714eff0d2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_7f10de876cd36002" hs_bindgen_7f10de876cd36002 :: + 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:1854: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_7f10de876cd36002 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_34ae07a4a65ee491" hs_bindgen_34ae07a4a65ee491 :: + 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:1859: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_34ae07a4a65ee491 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_2a21a5ae3046cff2" hs_bindgen_2a21a5ae3046cff2 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1861: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_2a21a5ae3046cff2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_06b10c0969a70977" hs_bindgen_06b10c0969a70977 :: + 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:1864: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_06b10c0969a70977 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_3df326aa1a3c72f8" hs_bindgen_3df326aa1a3c72f8 :: + 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:1865: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_3df326aa1a3c72f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_53ba660069021029" hs_bindgen_53ba660069021029 :: + 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:1867: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_53ba660069021029 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_ad8520567b92a7d2" hs_bindgen_ad8520567b92a7d2 :: + 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:1868: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_ad8520567b92a7d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_dccdbf143fa1dbaa" hs_bindgen_dccdbf143fa1dbaa :: + 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:1871: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_dccdbf143fa1dbaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_f7dae0d7cf2d0601" hs_bindgen_f7dae0d7cf2d0601 :: + 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:1873: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_f7dae0d7cf2d0601 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_6f2e32ec83453aed" hs_bindgen_6f2e32ec83453aed :: + 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:1874: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_6f2e32ec83453aed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_2ba7c12ab997c4b0" hs_bindgen_2ba7c12ab997c4b0 :: + 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:1875: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_2ba7c12ab997c4b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_9becd69ff5eb4051" hs_bindgen_9becd69ff5eb4051 :: + 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:1877: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_9becd69ff5eb4051 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_70e56191902735a7" hs_bindgen_70e56191902735a7 :: + 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:1880: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_70e56191902735a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_27a346cfa1d5ae44" hs_bindgen_27a346cfa1d5ae44 :: + 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:1882: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_27a346cfa1d5ae44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_730d8552002452ce" hs_bindgen_730d8552002452ce :: + 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:1885: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_730d8552002452ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_f6fd58852aa7bd9b" hs_bindgen_f6fd58852aa7bd9b :: + 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:1889: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_f6fd58852aa7bd9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_dfb2112cbcf0b30e" hs_bindgen_dfb2112cbcf0b30e :: + 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:1892: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_dfb2112cbcf0b30e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_5053dabfef914569" hs_bindgen_5053dabfef914569 :: + 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:1895: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_5053dabfef914569 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_bd0b5779d90661f9" hs_bindgen_bd0b5779d90661f9 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1911: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_bd0b5779d90661f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_a3f3145a3be8148f" hs_bindgen_a3f3145a3be8148f :: + 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:1917: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_a3f3145a3be8148f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_29f7f1a0c169bc39" hs_bindgen_29f7f1a0c169bc39 :: + 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:1928: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_29f7f1a0c169bc39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_c3f1f3f66a792867" hs_bindgen_c3f1f3f66a792867 :: + 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:1943: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_c3f1f3f66a792867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_d69b2b54ed9758f8" hs_bindgen_d69b2b54ed9758f8 :: + 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:1951: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_d69b2b54ed9758f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_13eee8095dd47f69" hs_bindgen_13eee8095dd47f69 :: + 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_13eee8095dd47f69 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1953: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_13eee8095dd47f69 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_71be83428b9a6327" hs_bindgen_71be83428b9a6327 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1955: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_71be83428b9a6327 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_14daac74ee1c93f9" hs_bindgen_14daac74ee1c93f9 :: + 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:1961: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_14daac74ee1c93f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_22e5b976e96c65fe" hs_bindgen_22e5b976e96c65fe :: + 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:1968: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_22e5b976e96c65fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_cd29900f6acb87e7" hs_bindgen_cd29900f6acb87e7 :: + 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_cd29900f6acb87e7 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1986: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_cd29900f6acb87e7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_4d63ce9c2aa16a44" hs_bindgen_4d63ce9c2aa16a44 :: + 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_4d63ce9c2aa16a44 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1995: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_4d63ce9c2aa16a44 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_d41b492d61778b02" hs_bindgen_d41b492d61778b02 :: + 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_d41b492d61778b02 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2003: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_d41b492d61778b02 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_2bfd3a7a2a628c27" hs_bindgen_2bfd3a7a2a628c27 :: + 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_2bfd3a7a2a628c27 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2013: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_2bfd3a7a2a628c27 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_a8d5f50bea0e2bef" hs_bindgen_a8d5f50bea0e2bef :: + 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_a8d5f50bea0e2bef + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2032: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_a8d5f50bea0e2bef x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_1530b54d786bd7a1" hs_bindgen_1530b54d786bd7a1 :: + 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:2039:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_1530b54d786bd7a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_8c20c7006688d728" hs_bindgen_8c20c7006688d728 :: + 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:2045: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_8c20c7006688d728 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_ddadabab65e3c15d" hs_bindgen_ddadabab65e3c15d :: + 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:2051: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_ddadabab65e3c15d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_bab3e54532e280a7" hs_bindgen_bab3e54532e280a7 :: + 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_bab3e54532e280a7 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2064: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_bab3e54532e280a7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_46438df5047d44e9" hs_bindgen_46438df5047d44e9 :: + 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:2072:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_46438df5047d44e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_c229226e5488f531" hs_bindgen_c229226e5488f531 :: + 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:2081: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_c229226e5488f531 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_c53a7fd940d12bc7" hs_bindgen_c53a7fd940d12bc7 :: + 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:2092: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_c53a7fd940d12bc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_dacb7ac25dfa1d75" hs_bindgen_dacb7ac25dfa1d75 :: + 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_dacb7ac25dfa1d75 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2103: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_dacb7ac25dfa1d75 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_1cad263553f64693" hs_bindgen_1cad263553f64693 :: + 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:2110:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_1cad263553f64693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_4cdb84555b162b51" hs_bindgen_4cdb84555b162b51 :: + 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_4cdb84555b162b51 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2113: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_4cdb84555b162b51 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_ee838ef77828700b" hs_bindgen_ee838ef77828700b :: + 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_ee838ef77828700b + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2116: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_ee838ef77828700b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_78b4182a955515a1" hs_bindgen_78b4182a955515a1 :: + 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:2128: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_78b4182a955515a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_a4abadc2b5bd031c" hs_bindgen_a4abadc2b5bd031c :: + 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:2136: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_a4abadc2b5bd031c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_ba2e2c596c637428" hs_bindgen_ba2e2c596c637428 :: + 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_ba2e2c596c637428 + +{-| 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:2151: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_ba2e2c596c637428 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_207dfe085fc5046b" hs_bindgen_207dfe085fc5046b :: + 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_207dfe085fc5046b + +{-| 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:2170: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_207dfe085fc5046b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_ca00bd988228c8d6" hs_bindgen_ca00bd988228c8d6 :: + 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_ca00bd988228c8d6 + +{-| 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:2186: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_ca00bd988228c8d6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_7da0996954571a0e" hs_bindgen_7da0996954571a0e :: + 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_7da0996954571a0e + +{-| 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:2213: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_7da0996954571a0e 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_7_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_bd8762dfea407ba0" hs_bindgen_bd8762dfea407ba0 :: + 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:2231: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_bd8762dfea407ba0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_89a11713e7afd3ea" hs_bindgen_89a11713e7afd3ea :: + 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:2252: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_89a11713e7afd3ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_a1ab8c9c16f93d7d" hs_bindgen_a1ab8c9c16f93d7d :: + 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:2273: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_a1ab8c9c16f93d7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_d50adc72008051cc" hs_bindgen_d50adc72008051cc :: + 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:2298:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_d50adc72008051cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_847b9c03146f5a46" hs_bindgen_847b9c03146f5a46 :: + 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:2306: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_847b9c03146f5a46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_35c003860f1c4e94" hs_bindgen_35c003860f1c4e94 :: + 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:2316: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_35c003860f1c4e94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_ctx_from_esys@ +foreign import ccall safe "hs_bindgen_cd05478e530d06be" hs_bindgen_cd05478e530d06be :: + 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:2327: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_cd05478e530d06be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_0ef0684fa58b3178" hs_bindgen_0ef0684fa58b3178 :: + 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:2339: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_0ef0684fa58b3178 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_e2d4548f2845fc57" hs_bindgen_e2d4548f2845fc57 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2346: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_e2d4548f2845fc57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_127d8ed3a00f5684" hs_bindgen_127d8ed3a00f5684 :: + 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:2360: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_127d8ed3a00f5684 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall safe "hs_bindgen_a05488a377bf13db" hs_bindgen_a05488a377bf13db :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2372: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_a05488a377bf13db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_0e0ab053c3eaca6a" hs_bindgen_0e0ab053c3eaca6a :: + 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:2383: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_0e0ab053c3eaca6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_e33086f3a97e498c" hs_bindgen_e33086f3a97e498c :: + 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:2395: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_e33086f3a97e498c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_1b8a882c5c83464f" hs_bindgen_1b8a882c5c83464f :: + 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:2402: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_1b8a882c5c83464f diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/Unsafe.hs new file mode 100644 index 00000000..3ae666e3 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_0/Unsafe.hs @@ -0,0 +1,13730 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_7_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_7_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_2c9e6a8bc589e26f (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_2fc25cd53fb20061 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_7633c2f9d18ac11d (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_8e5a3be22f6afd2c (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_d0178ab2b12e3053 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_a8ea77cacb49d88d (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_e802ad9a1318145e (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_2340f1bd94654995 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_2b496ace42d63f7f (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_23ee112aff289622 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ead9e47c4a6b4c99 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d017a643b2c0f15b (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d968423cf1c34078 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bdbc65d6d71b29f0 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6d7f9ca18de24e68 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_653feb2032b5feb9 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_27a9db239c1d831e (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_41adaead3fc46cb4 (" + , " 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_84906a60b210248a (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb0e67528747624f (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f63032244d687af (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ed1ce8dfc8aa8a10 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_99ebf26486c3003a (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c60e2d79bbbb3ffb (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fdc99b462a60165f (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ceb45fc1579e9b5a (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7bd5b174a8ef61ee (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e6d1a166c3a2127c (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_81b7b7a2edf0db37 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a1ec6a86778afb69 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8acebed5f3b58f1a (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_23729c9fb83c61f2 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d8b1b07885fe8852 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8318f273a1adde38 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e20d4b5b29def7cd (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fe5174d3251456c4 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_66696dee6f28ed78 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1e4c9943d4af99cb (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e50c646df8e50595 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_26f723861538b438 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_f44e6f972fb98a7c (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_df1feb774afb1d94 (" + , " 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_a399237c4d6413d7 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_650072b5fd8b6d37 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1dd30157884d326a (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_350f5290b5410efb (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8d04d0402ecaae89 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3182d660f8e86c5e (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_63614594bde7cfcb (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_21c8a54afdde1eba (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_45d0438f08d89c73 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d87d7644e27ce71 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_26e931a939690e15 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ed8482177b689e6 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0eb8f266ef9cf031 (" + , " 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_7b156e9ffaf441cc (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6f012d5500610457 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_6c5ddf2b68b95c89 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ef53e80f1956342d (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e79225422a1579b7 (" + , " 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_70d77d7a37f42676 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_374c37e84c0fb747 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_340d96d9af001178 (" + , " 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_db300dd6189bb964 (" + , " 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_4241ab05aee9713d (" + , " 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_695e5b395a131f5b (" + , " 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_0804d7ef2e1709ac (" + , " 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_f4d37a85442b6b16 (" + , " 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_cf3513a4d05139d7 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d065a6031de1496a (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6ebdea145ab50bbe (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_7dd4f26bd85b51c2 (" + , " 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_2be82f7602dcbb41 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_739d8313df946000 (" + , " 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_363d7ada1d6978c9 (" + , " 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_3dc7f761745028bf (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ae9e03517521198 (" + , " 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_b62fcaa253031be1 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_b61738e40d0a2ca8 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fe3174a431ec70f4 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d089e86c2d7d8d81 (" + , " 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_b68945536d11fdac (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_3eb08f471d8d9537 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_74942e9cfdb76f05 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0b9af2c90741d2ad (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_da254527f4645152 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_967fa12fa1681393 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9b1cc8565cfb72e0 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_77fd0ce52410bd54 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be157593c11eaae8 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_293d98e65eadaaad (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ccfc9eda92e55ea (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_c34443165b3762df (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_2ca1e19908348a27 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_de00bee5a1126712 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_4c11747011c64ecd (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_89dc4967d9335927 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_808fe119eb0361bf (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3915d5337e3fde54 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6ab2e29978cbffe9 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b41b55bc6e86d2d0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51e1b1ab9798e8bd (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_58c608afd312877f (" + , " 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_380679b904a7f927 (" + , " 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_dc291c9c7faa9dbf (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8725d16d723df050 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7d8974a85f9fc560 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d868dc9534dbc087 (" + , " 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_08c1b431eef90405 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cd392a566ea9c4cb (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d512d540a94bcdff (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_849bf6a2be572a7b (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6eb476ff9907bb86 (" + , " 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_7f27e3d764ab8d39 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4c5eb4da07c8ab54 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_98e81cb39d339e2e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52d02b38886179d2 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e698f164090dabc (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a1be5c8453524519 (" + , " 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_7aaf56b8d2462fea (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18b46bdf915dab59 (" + , " 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_2b1e4a2cd2b2a865 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f3c4e2467cde30b3 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2e61f05cc8f85dd (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6410d398268c9188 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_39ccfcde405746a2 (" + , " 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_68841a43068426a0 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_87a9034fe7dede72 (" + , " 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_e3151931779283d4 (" + , " 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_df71eeb8fa0a505b (" + , " 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_a15ce86725508c90 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f7f0ff963590c297 (" + , " 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_778719728be6d9b3 (" + , " 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_ea0e579708c5170d (" + , " 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_d720d4cd02295fc5 (" + , " 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_555ecbb28c4cbed0 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f39c9791eca5784f (" + , " 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_fee1181a01d874fa (" + , " 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_50b1e7af0a56a5b6 (" + , " 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_6179dec1732d793e (" + , " 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_986770b05bc3a4ca (" + , " 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_09146893fdef0e75 (" + , " 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_b4c0be1f3b6979d7 (" + , " 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_fba62066af483383 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5982d4b111440a5b (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39dd1492d3745c07 (" + , " 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_b231d48c6b8d7371 (" + , " 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_968857f1724d77a9 (" + , " 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_e833614b6ef78d88 (" + , " 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_3ba026af66150fbc (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_10a8522fb5509c6d (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47149699d666503c (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2825d39add01f298 (" + , " 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_340e69b33c3868cb (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ce052f436d194550 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ac2f9e881815625 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8d69d7847547d199 (" + , " 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_bc19b742cd7a3241 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_28ea813d31473a86 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_382472325baf854f (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aeaaa57afb840fa8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b1cea13dac43b3f4 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5c4deee533829bab (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6c70063c535ed2f3 (" + , " 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_ce12dc7c10511807 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_55f1ccf87331ef92 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_71285c01f9eb9fea (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b65e60a00d5facff (" + , " 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_69954ab35032c357 (" + , " 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_41f527698dead5c0 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f1a89a817523c47 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8c97d06b4bef3cfe (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1cc66dec76512d0b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bcd2fc6737a20806 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5be7c4a673859f03 (" + , " 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_92037416c081ce1c (" + , " 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_c4b8b5c1dec6e364 (" + , " 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_926656c75a1cbe4a (" + , " 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_6044d7c46a632bcc (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_150b0605a80bb05d (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b2d85f7f53b81dd0 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_04b287f3bf134476 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bf008d216a278f78 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e63707c2fb10a331 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bf09f1e49ba2dbb4 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4812f3e4d4a436b (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e009b54c5d5d63f (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2a885c7c98986554 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1ac539cc02ad1b84 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b283405df7026f65 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_25417cccd0d87a4c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8b642d838d5161f7 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7995b739d8d8df22 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3dc197cbf51377d4 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aef52034ed0b8658 (" + , " 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_fb6481ce015cd02e (" + , " 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_cdd83b7345980ddc (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c4c100fba29634d3 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4c1032d0b2ec3fa7 (" + , " 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_6366df11caf3b27b (" + , " 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_fbc8b413728f647e (" + , " 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_3f01ca09f3188f8d (" + , " 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_4204af479d35411e (" + , " 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_9498f63dd4acaae1 (" + , " 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_f2507ab52b006950 (" + , " 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_68f6376ce4ed19b7 (" + , " 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_5e69554b96c93186 (" + , " 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_c10c780f97643e4b (" + , " 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_9d8d1100b681f27a (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_3bf00cffd88b5257 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_67b904450839a344 (" + , " 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_fe28c9a30b762a90 (" + , " 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_5c13450bbc34014f (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ae5f2c7aa1df0c43 (" + , " 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_b6f48c160f95e463 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_71539fe2e9cbe5e5 (" + , " 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_1757a44b1cad10cd (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b03e5200c87a08b9 (" + , " 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_79b2b70540c5bc2c (" + , " 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_bb5d29ad5d628a69 (" + , " 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_2ab278d6f7f5912c (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d8e0d7fa6e3656ac (" + , " 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_5f6f6e8cba803cb1 (" + , " 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_7953f73298185084 (" + , " 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_645cc091d66c0008 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f745a145f86f8fd9 (" + , " 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_ea14e533b7011d97 (" + , " 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_a03244c863fcc0dd (" + , " 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_254873e7b8573979 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_669db7f9afe05505 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a2534281adec93c1 (" + , " 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_d8b9df966d50d73e (" + , " 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_9c073dbaa7e366bd (" + , " 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_249341cd424de660 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_97d490431b739cc7 (" + , " 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_483a4999c08895c7 (" + , " 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_41a8fa8847acd5b5 (" + , " 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_05ae0658ac3afbce (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_73ab0c5b71187813 (" + , " 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_2318ff8819394005 (" + , " 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_eed233e8f65f2009 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_16b65e0ae318e4af (" + , " 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_53b0d8013ccb40e3 (" + , " 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_8ab0380c34d4c6b9 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f971d4ed53995acd (" + , " 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_9d83d38bbe90d0dc (" + , " 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_efb05cbc40d45569 (" + , " 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_7fa8161e34a11d66 (" + , " 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_8a2a3284d64a2d91 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c89f45dd35a99693 (" + , " 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_499b8aff3101814c (" + , " 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_67f46e006e63eded (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_16342d1ab5224e5b (" + , " 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_ed7d783c377fc771 (" + , " 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_7bf6b24f6cc63a2f (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd3e0f448116fa20 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a961b605b95dc3d (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e1a28a62b7276f0d (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55f3b0ebee4faebf (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8ab0884992bdc52c (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ea19f0ff7b57311f (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ef964b3ce6ea24e8 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_48b0a73ab7db01af (" + , " 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_8a37d02b601d2d38 (" + , " 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_cd3742bed0c9acb0 (" + , " 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_311f218970b56916 (" + , " 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_934a4e0bfc72914e (" + , " 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_838bbae81c27860e (" + , " 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_92ba761d680c369c (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7ad269c4f70e989a (" + , " 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_286f5e1d0c327484 (" + , " 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_15e52b391f34ee70 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9c70818e6eb09c0c (" + , " 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_4221367e426d0e92 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6cbbd519e7b44fdd (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_80a53169ac50b0c9 (" + , " 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_7aa3399b8dd8d311 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_69055a178c1ef053 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f54e6deec50a08a (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e3327fe71c72f08 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6c8afce3240f5530 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0b4cdd8b430e0a2 (" + , " 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_593d3159e7ccc00f (" + , " 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_2e54e4936e72db19 (" + , " 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_d8c1974d08622309 (" + , " 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_04523156f1a01491 (" + , " 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_6d9795816ba22498 (" + , " 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_2951449d25b06c1b (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ef83af0bd560db09 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8e871415188717c0 (" + , " 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_572f152f0ae933db (" + , " 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_bcd2b98e8bf24729 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4210c13c12abcd47 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e17beb4da7aaef2 (" + , " 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_c3eae74c7b55ecb7 (" + , " 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_1cc96ecac14d3c7c (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9d240e27eee3e15c (" + , " 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_2a732d0b4f6e35ef (" + , " 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_216bd3385fdda48d (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_d5e9682c4c1e78a7 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_163dd1b529143d69 (" + , " 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_9223ba8def9a63ca (" + , " 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_fa854adcf0803ef2 (" + , " 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_6ea9a5bd86c386eb (" + , " 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_733abc7c73d6c804 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_532433abf8c58531 (" + , " 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_d3f6fc8ba321fcba (" + , " 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_f91654fbe36c7d48 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_d2449b5450dfe345 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de714ebcdfcbb0a3 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e6e05a0c13a9eb7 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_582cecb66e819781 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_739d1922e137f657 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_29f30f9544d4ec0b (" + , " 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_8a00e4b0ea5ff405 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c24252078914c481 (" + , " 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_ce921d3467016c6a (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cb29f0ed9ed86173 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_2c9e6a8bc589e26f" hs_bindgen_2c9e6a8bc589e26f :: + 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:170: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_2c9e6a8bc589e26f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_2fc25cd53fb20061" hs_bindgen_2fc25cd53fb20061 :: + 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:179: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_2fc25cd53fb20061 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_7633c2f9d18ac11d" hs_bindgen_7633c2f9d18ac11d :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_7633c2f9d18ac11d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_8e5a3be22f6afd2c" hs_bindgen_8e5a3be22f6afd2c :: + 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:192: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_8e5a3be22f6afd2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_d0178ab2b12e3053" hs_bindgen_d0178ab2b12e3053 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_d0178ab2b12e3053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_a8ea77cacb49d88d" hs_bindgen_a8ea77cacb49d88d :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_a8ea77cacb49d88d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_e802ad9a1318145e" hs_bindgen_e802ad9a1318145e :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_e802ad9a1318145e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_2340f1bd94654995" hs_bindgen_2340f1bd94654995 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_2340f1bd94654995 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_2b496ace42d63f7f" hs_bindgen_2b496ace42d63f7f :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_2b496ace42d63f7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_23ee112aff289622" hs_bindgen_23ee112aff289622 :: + 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:223: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_23ee112aff289622 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_ead9e47c4a6b4c99" hs_bindgen_ead9e47c4a6b4c99 :: + 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:229: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_ead9e47c4a6b4c99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_d017a643b2c0f15b" hs_bindgen_d017a643b2c0f15b :: + 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:235: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_d017a643b2c0f15b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_d968423cf1c34078" hs_bindgen_d968423cf1c34078 :: + 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:247: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_d968423cf1c34078 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_bdbc65d6d71b29f0" hs_bindgen_bdbc65d6d71b29f0 :: + 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:257: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_bdbc65d6d71b29f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_6d7f9ca18de24e68" hs_bindgen_6d7f9ca18de24e68 :: + 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:262:28@ + +__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_6d7f9ca18de24e68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_653feb2032b5feb9" hs_bindgen_653feb2032b5feb9 :: + 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:267: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_653feb2032b5feb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_27a9db239c1d831e" hs_bindgen_27a9db239c1d831e :: + 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:286: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_27a9db239c1d831e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_41adaead3fc46cb4" hs_bindgen_41adaead3fc46cb4 :: + 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:298: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_41adaead3fc46cb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_84906a60b210248a" hs_bindgen_84906a60b210248a :: + 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:312: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_84906a60b210248a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_eb0e67528747624f" hs_bindgen_eb0e67528747624f :: + 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:320: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_eb0e67528747624f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_5f63032244d687af" hs_bindgen_5f63032244d687af :: + 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:330: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_5f63032244d687af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_ed1ce8dfc8aa8a10" hs_bindgen_ed1ce8dfc8aa8a10 :: + 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:340: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_ed1ce8dfc8aa8a10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_99ebf26486c3003a" hs_bindgen_99ebf26486c3003a :: + 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:350: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_99ebf26486c3003a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_c60e2d79bbbb3ffb" hs_bindgen_c60e2d79bbbb3ffb :: + 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:357: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_c60e2d79bbbb3ffb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_fdc99b462a60165f" hs_bindgen_fdc99b462a60165f :: + 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:371: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_fdc99b462a60165f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_ceb45fc1579e9b5a" hs_bindgen_ceb45fc1579e9b5a :: + 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:379: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_ceb45fc1579e9b5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_7bd5b174a8ef61ee" hs_bindgen_7bd5b174a8ef61ee :: + 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:387: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_7bd5b174a8ef61ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_e6d1a166c3a2127c" hs_bindgen_e6d1a166c3a2127c :: + 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:395: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_e6d1a166c3a2127c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_81b7b7a2edf0db37" hs_bindgen_81b7b7a2edf0db37 :: + 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:404: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_81b7b7a2edf0db37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_a1ec6a86778afb69" hs_bindgen_a1ec6a86778afb69 :: + 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:414: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_a1ec6a86778afb69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_8acebed5f3b58f1a" hs_bindgen_8acebed5f3b58f1a :: + 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:422: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_8acebed5f3b58f1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_23729c9fb83c61f2" hs_bindgen_23729c9fb83c61f2 :: + 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:429: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_23729c9fb83c61f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_d8b1b07885fe8852" hs_bindgen_d8b1b07885fe8852 :: + 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:437: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_d8b1b07885fe8852 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_8318f273a1adde38" hs_bindgen_8318f273a1adde38 :: + 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:452: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_8318f273a1adde38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_e20d4b5b29def7cd" hs_bindgen_e20d4b5b29def7cd :: + 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:460: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_e20d4b5b29def7cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_fe5174d3251456c4" hs_bindgen_fe5174d3251456c4 :: + 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:469: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_fe5174d3251456c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_66696dee6f28ed78" hs_bindgen_66696dee6f28ed78 :: + 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:478: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_66696dee6f28ed78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_1e4c9943d4af99cb" hs_bindgen_1e4c9943d4af99cb :: + 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:487: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_1e4c9943d4af99cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_e50c646df8e50595" hs_bindgen_e50c646df8e50595 :: + 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:497: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_e50c646df8e50595 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_26f723861538b438" hs_bindgen_26f723861538b438 :: + 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:505: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_26f723861538b438 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_f44e6f972fb98a7c" hs_bindgen_f44e6f972fb98a7c :: + 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:513: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_f44e6f972fb98a7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_df1feb774afb1d94" hs_bindgen_df1feb774afb1d94 :: + 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:523: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_df1feb774afb1d94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_a399237c4d6413d7" hs_bindgen_a399237c4d6413d7 :: + 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:533: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_a399237c4d6413d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_650072b5fd8b6d37" hs_bindgen_650072b5fd8b6d37 :: + 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:547: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_650072b5fd8b6d37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_1dd30157884d326a" hs_bindgen_1dd30157884d326a :: + 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:552: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_1dd30157884d326a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_350f5290b5410efb" hs_bindgen_350f5290b5410efb :: + 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:557: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_350f5290b5410efb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_8d04d0402ecaae89" hs_bindgen_8d04d0402ecaae89 :: + 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:562: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_8d04d0402ecaae89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_3182d660f8e86c5e" hs_bindgen_3182d660f8e86c5e :: + 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:567: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_3182d660f8e86c5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_63614594bde7cfcb" hs_bindgen_63614594bde7cfcb :: + 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:572: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_63614594bde7cfcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_21c8a54afdde1eba" hs_bindgen_21c8a54afdde1eba :: + 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:579: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_21c8a54afdde1eba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_45d0438f08d89c73" hs_bindgen_45d0438f08d89c73 :: + 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:584: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_45d0438f08d89c73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_1d87d7644e27ce71" hs_bindgen_1d87d7644e27ce71 :: + 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:590: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_1d87d7644e27ce71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_26e931a939690e15" hs_bindgen_26e931a939690e15 :: + 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:596: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_26e931a939690e15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_4ed8482177b689e6" hs_bindgen_4ed8482177b689e6 :: + 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:602:5@ + +__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_4ed8482177b689e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_0eb8f266ef9cf031" hs_bindgen_0eb8f266ef9cf031 :: + 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:608:5@ + +__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_0eb8f266ef9cf031 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_7b156e9ffaf441cc" hs_bindgen_7b156e9ffaf441cc :: + 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:613: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_7b156e9ffaf441cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_6f012d5500610457" hs_bindgen_6f012d5500610457 :: + 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:623:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_6f012d5500610457 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_6c5ddf2b68b95c89" hs_bindgen_6c5ddf2b68b95c89 :: + 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:628: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_6c5ddf2b68b95c89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_ef53e80f1956342d" hs_bindgen_ef53e80f1956342d :: + 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:633: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_ef53e80f1956342d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_e79225422a1579b7" hs_bindgen_e79225422a1579b7 :: + 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_e79225422a1579b7 + +{-| + + 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:660: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_e79225422a1579b7 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_70d77d7a37f42676" hs_bindgen_70d77d7a37f42676 :: + 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:672:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_70d77d7a37f42676 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_374c37e84c0fb747" hs_bindgen_374c37e84c0fb747 :: + 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:678:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_374c37e84c0fb747 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_340d96d9af001178" hs_bindgen_340d96d9af001178 :: + 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_340d96d9af001178 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:697: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_340d96d9af001178 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_db300dd6189bb964" hs_bindgen_db300dd6189bb964 :: + 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_db300dd6189bb964 + +{-| 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:730: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_db300dd6189bb964 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_4241ab05aee9713d" hs_bindgen_4241ab05aee9713d :: + 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_4241ab05aee9713d + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:754: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_4241ab05aee9713d x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_695e5b395a131f5b" hs_bindgen_695e5b395a131f5b :: + 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_695e5b395a131f5b + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:781: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_695e5b395a131f5b x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_0804d7ef2e1709ac" hs_bindgen_0804d7ef2e1709ac :: + 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_0804d7ef2e1709ac + +{-| 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:800: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_0804d7ef2e1709ac x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_f4d37a85442b6b16" hs_bindgen_f4d37a85442b6b16 :: + 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_f4d37a85442b6b16 + +{-| 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:823: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_f4d37a85442b6b16 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_7_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_cf3513a4d05139d7" hs_bindgen_cf3513a4d05139d7 :: + 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:841: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_cf3513a4d05139d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_d065a6031de1496a" hs_bindgen_d065a6031de1496a :: + 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:847: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_d065a6031de1496a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_6ebdea145ab50bbe" hs_bindgen_6ebdea145ab50bbe :: + 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:853: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_6ebdea145ab50bbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_7dd4f26bd85b51c2" hs_bindgen_7dd4f26bd85b51c2 :: + 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_7dd4f26bd85b51c2 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:858: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_7dd4f26bd85b51c2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_2be82f7602dcbb41" hs_bindgen_2be82f7602dcbb41 :: + 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:864: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_2be82f7602dcbb41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_739d8313df946000" hs_bindgen_739d8313df946000 :: + 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_739d8313df946000 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:870: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_739d8313df946000 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_363d7ada1d6978c9" hs_bindgen_363d7ada1d6978c9 :: + 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_363d7ada1d6978c9 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:876: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_363d7ada1d6978c9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_3dc7f761745028bf" hs_bindgen_3dc7f761745028bf :: + 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:884: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_3dc7f761745028bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_2ae9e03517521198" hs_bindgen_2ae9e03517521198 :: + 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:894: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_2ae9e03517521198 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_b62fcaa253031be1" hs_bindgen_b62fcaa253031be1 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:907: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_b62fcaa253031be1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_b61738e40d0a2ca8" hs_bindgen_b61738e40d0a2ca8 :: + 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:913:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_b61738e40d0a2ca8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_fe3174a431ec70f4" hs_bindgen_fe3174a431ec70f4 :: + 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:918: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_fe3174a431ec70f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_d089e86c2d7d8d81" hs_bindgen_d089e86c2d7d8d81 :: + 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:923:28@ + +__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_d089e86c2d7d8d81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_b68945536d11fdac" hs_bindgen_b68945536d11fdac :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:928:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_b68945536d11fdac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_3eb08f471d8d9537" hs_bindgen_3eb08f471d8d9537 :: + 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:933: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_3eb08f471d8d9537 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_74942e9cfdb76f05" hs_bindgen_74942e9cfdb76f05 :: + 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:938: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_74942e9cfdb76f05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_0b9af2c90741d2ad" hs_bindgen_0b9af2c90741d2ad :: + 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:943: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_0b9af2c90741d2ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_da254527f4645152" hs_bindgen_da254527f4645152 :: + 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:949: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_da254527f4645152 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_967fa12fa1681393" hs_bindgen_967fa12fa1681393 :: + 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:954: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_967fa12fa1681393 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_9b1cc8565cfb72e0" hs_bindgen_9b1cc8565cfb72e0 :: + 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:959: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_9b1cc8565cfb72e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_77fd0ce52410bd54" hs_bindgen_77fd0ce52410bd54 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:964: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_77fd0ce52410bd54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_be157593c11eaae8" hs_bindgen_be157593c11eaae8 :: + 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_be157593c11eaae8 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:969: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_be157593c11eaae8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_293d98e65eadaaad" hs_bindgen_293d98e65eadaaad :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:974: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_293d98e65eadaaad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_8ccfc9eda92e55ea" hs_bindgen_8ccfc9eda92e55ea :: + 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:981: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_8ccfc9eda92e55ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_c34443165b3762df" hs_bindgen_c34443165b3762df :: + 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:986: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_c34443165b3762df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_2ca1e19908348a27" hs_bindgen_2ca1e19908348a27 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:988: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_2ca1e19908348a27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_de00bee5a1126712" hs_bindgen_de00bee5a1126712 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:990: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_de00bee5a1126712 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_4c11747011c64ecd" hs_bindgen_4c11747011c64ecd :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:992: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_4c11747011c64ecd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_89dc4967d9335927" hs_bindgen_89dc4967d9335927 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:993: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_89dc4967d9335927 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_808fe119eb0361bf" hs_bindgen_808fe119eb0361bf :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:995: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_808fe119eb0361bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_3915d5337e3fde54" hs_bindgen_3915d5337e3fde54 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:996: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_3915d5337e3fde54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_6ab2e29978cbffe9" hs_bindgen_6ab2e29978cbffe9 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:998: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_6ab2e29978cbffe9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_b41b55bc6e86d2d0" hs_bindgen_b41b55bc6e86d2d0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:999: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_b41b55bc6e86d2d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_51e1b1ab9798e8bd" hs_bindgen_51e1b1ab9798e8bd :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1000: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_51e1b1ab9798e8bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_58c608afd312877f" hs_bindgen_58c608afd312877f :: + 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:1003: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_58c608afd312877f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_380679b904a7f927" hs_bindgen_380679b904a7f927 :: + 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:1006: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_380679b904a7f927 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_dc291c9c7faa9dbf" hs_bindgen_dc291c9c7faa9dbf :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1013: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_dc291c9c7faa9dbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_8725d16d723df050" hs_bindgen_8725d16d723df050 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1020: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_8725d16d723df050 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_7d8974a85f9fc560" hs_bindgen_7d8974a85f9fc560 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1025: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_7d8974a85f9fc560 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_d868dc9534dbc087" hs_bindgen_d868dc9534dbc087 :: + 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:1029: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_d868dc9534dbc087 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_08c1b431eef90405" hs_bindgen_08c1b431eef90405 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1031: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_08c1b431eef90405 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_cd392a566ea9c4cb" hs_bindgen_cd392a566ea9c4cb :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1032: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_cd392a566ea9c4cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_d512d540a94bcdff" hs_bindgen_d512d540a94bcdff :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1034: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_d512d540a94bcdff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_849bf6a2be572a7b" hs_bindgen_849bf6a2be572a7b :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1036: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_849bf6a2be572a7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_6eb476ff9907bb86" hs_bindgen_6eb476ff9907bb86 :: + 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:1039: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_6eb476ff9907bb86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_7f27e3d764ab8d39" hs_bindgen_7f27e3d764ab8d39 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1041: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_7f27e3d764ab8d39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_4c5eb4da07c8ab54" hs_bindgen_4c5eb4da07c8ab54 :: + 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:1048: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_4c5eb4da07c8ab54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_98e81cb39d339e2e" hs_bindgen_98e81cb39d339e2e :: + 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:1055: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_98e81cb39d339e2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_52d02b38886179d2" hs_bindgen_52d02b38886179d2 :: + 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:1060: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_52d02b38886179d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_3e698f164090dabc" hs_bindgen_3e698f164090dabc :: + 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:1065: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_3e698f164090dabc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_a1be5c8453524519" hs_bindgen_a1be5c8453524519 :: + 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:1083: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_a1be5c8453524519 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_7aaf56b8d2462fea" hs_bindgen_7aaf56b8d2462fea :: + 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:1094: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_7aaf56b8d2462fea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_18b46bdf915dab59" hs_bindgen_18b46bdf915dab59 :: + 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:1110: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_18b46bdf915dab59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_2b1e4a2cd2b2a865" hs_bindgen_2b1e4a2cd2b2a865 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1114: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_2b1e4a2cd2b2a865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_f3c4e2467cde30b3" hs_bindgen_f3c4e2467cde30b3 :: + 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:1117: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_f3c4e2467cde30b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_c2e61f05cc8f85dd" hs_bindgen_c2e61f05cc8f85dd :: + 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:1119: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_c2e61f05cc8f85dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_6410d398268c9188" hs_bindgen_6410d398268c9188 :: + 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:1121: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_6410d398268c9188 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_39ccfcde405746a2" hs_bindgen_39ccfcde405746a2 :: + 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:1123: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_39ccfcde405746a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_68841a43068426a0" hs_bindgen_68841a43068426a0 :: + 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:1125: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_68841a43068426a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_87a9034fe7dede72" hs_bindgen_87a9034fe7dede72 :: + 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:1145: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_87a9034fe7dede72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_e3151931779283d4" hs_bindgen_e3151931779283d4 :: + 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:1167: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_e3151931779283d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_df71eeb8fa0a505b" hs_bindgen_df71eeb8fa0a505b :: + 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_df71eeb8fa0a505b + +{-| 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:1175: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_df71eeb8fa0a505b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_a15ce86725508c90" hs_bindgen_a15ce86725508c90 :: + 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:1180:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_a15ce86725508c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_f7f0ff963590c297" hs_bindgen_f7f0ff963590c297 :: + 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:1193: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_f7f0ff963590c297 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_778719728be6d9b3" hs_bindgen_778719728be6d9b3 :: + 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:1198: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_778719728be6d9b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_ea0e579708c5170d" hs_bindgen_ea0e579708c5170d :: + 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:1203: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_ea0e579708c5170d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_d720d4cd02295fc5" hs_bindgen_d720d4cd02295fc5 :: + 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:1208: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_d720d4cd02295fc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_555ecbb28c4cbed0" hs_bindgen_555ecbb28c4cbed0 :: + 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:1210: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_555ecbb28c4cbed0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_f39c9791eca5784f" hs_bindgen_f39c9791eca5784f :: + 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:1217: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_f39c9791eca5784f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_fee1181a01d874fa" hs_bindgen_fee1181a01d874fa :: + 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:1232: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_fee1181a01d874fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_50b1e7af0a56a5b6" hs_bindgen_50b1e7af0a56a5b6 :: + 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:1247: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_50b1e7af0a56a5b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_6179dec1732d793e" hs_bindgen_6179dec1732d793e :: + 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:1264: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_6179dec1732d793e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_986770b05bc3a4ca" hs_bindgen_986770b05bc3a4ca :: + 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:1279: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_986770b05bc3a4ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_09146893fdef0e75" hs_bindgen_09146893fdef0e75 :: + 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:1295: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_09146893fdef0e75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_b4c0be1f3b6979d7" hs_bindgen_b4c0be1f3b6979d7 :: + 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:1310: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_b4c0be1f3b6979d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_fba62066af483383" hs_bindgen_fba62066af483383 :: + 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_fba62066af483383 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1321: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_fba62066af483383 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_5982d4b111440a5b" hs_bindgen_5982d4b111440a5b :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1323: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_5982d4b111440a5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_39dd1492d3745c07" hs_bindgen_39dd1492d3745c07 :: + 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:1325: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_39dd1492d3745c07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_b231d48c6b8d7371" hs_bindgen_b231d48c6b8d7371 :: + 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:1330: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_b231d48c6b8d7371 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_968857f1724d77a9" hs_bindgen_968857f1724d77a9 :: + 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:1335: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_968857f1724d77a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_e833614b6ef78d88" hs_bindgen_e833614b6ef78d88 :: + 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:1340: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_e833614b6ef78d88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_3ba026af66150fbc" hs_bindgen_3ba026af66150fbc :: + 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:1342: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_3ba026af66150fbc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_10a8522fb5509c6d" hs_bindgen_10a8522fb5509c6d :: + 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:1347: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_10a8522fb5509c6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_47149699d666503c" hs_bindgen_47149699d666503c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1349: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_47149699d666503c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_2825d39add01f298" hs_bindgen_2825d39add01f298 :: + 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:1352: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_2825d39add01f298 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_340e69b33c3868cb" hs_bindgen_340e69b33c3868cb :: + 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:1357:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_340e69b33c3868cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_ce052f436d194550" hs_bindgen_ce052f436d194550 :: + 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:1362: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_ce052f436d194550 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_2ac2f9e881815625" hs_bindgen_2ac2f9e881815625 :: + 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:1364: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_2ac2f9e881815625 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_8d69d7847547d199" hs_bindgen_8d69d7847547d199 :: + 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:1369: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_8d69d7847547d199 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_bc19b742cd7a3241" hs_bindgen_bc19b742cd7a3241 :: + 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_bc19b742cd7a3241 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1371: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_bc19b742cd7a3241 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_28ea813d31473a86" hs_bindgen_28ea813d31473a86 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1374: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_28ea813d31473a86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_382472325baf854f" hs_bindgen_382472325baf854f :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1376: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_382472325baf854f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_aeaaa57afb840fa8" hs_bindgen_aeaaa57afb840fa8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1378: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_aeaaa57afb840fa8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_b1cea13dac43b3f4" hs_bindgen_b1cea13dac43b3f4 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1380: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_b1cea13dac43b3f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_5c4deee533829bab" hs_bindgen_5c4deee533829bab :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1382: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_5c4deee533829bab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_6c70063c535ed2f3" hs_bindgen_6c70063c535ed2f3 :: + 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:1385: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_6c70063c535ed2f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_ce12dc7c10511807" hs_bindgen_ce12dc7c10511807 :: + 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:1387: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_ce12dc7c10511807 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_55f1ccf87331ef92" hs_bindgen_55f1ccf87331ef92 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1390: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_55f1ccf87331ef92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_71285c01f9eb9fea" hs_bindgen_71285c01f9eb9fea :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1392: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_71285c01f9eb9fea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_b65e60a00d5facff" hs_bindgen_b65e60a00d5facff :: + 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:1398: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_b65e60a00d5facff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_69954ab35032c357" hs_bindgen_69954ab35032c357 :: + 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:1401: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_69954ab35032c357 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_41f527698dead5c0" hs_bindgen_41f527698dead5c0 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1404: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_41f527698dead5c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_6f1a89a817523c47" hs_bindgen_6f1a89a817523c47 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1407: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_6f1a89a817523c47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_8c97d06b4bef3cfe" hs_bindgen_8c97d06b4bef3cfe :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1409: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_8c97d06b4bef3cfe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_1cc66dec76512d0b" hs_bindgen_1cc66dec76512d0b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1411: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_1cc66dec76512d0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_bcd2fc6737a20806" hs_bindgen_bcd2fc6737a20806 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1413: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_bcd2fc6737a20806 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_5be7c4a673859f03" hs_bindgen_5be7c4a673859f03 :: + 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:1428: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_5be7c4a673859f03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_92037416c081ce1c" hs_bindgen_92037416c081ce1c :: + 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:1442: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_92037416c081ce1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_c4b8b5c1dec6e364" hs_bindgen_c4b8b5c1dec6e364 :: + 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:1460: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_c4b8b5c1dec6e364 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_926656c75a1cbe4a" hs_bindgen_926656c75a1cbe4a :: + 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:1475: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_926656c75a1cbe4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_6044d7c46a632bcc" hs_bindgen_6044d7c46a632bcc :: + 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_6044d7c46a632bcc + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_6044d7c46a632bcc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_150b0605a80bb05d" hs_bindgen_150b0605a80bb05d :: + 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_150b0605a80bb05d + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1483: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_150b0605a80bb05d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_b2d85f7f53b81dd0" hs_bindgen_b2d85f7f53b81dd0 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1485: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_b2d85f7f53b81dd0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_04b287f3bf134476" hs_bindgen_04b287f3bf134476 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1487: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_04b287f3bf134476 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_bf008d216a278f78" hs_bindgen_bf008d216a278f78 :: + 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_bf008d216a278f78 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_bf008d216a278f78 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_e63707c2fb10a331" hs_bindgen_e63707c2fb10a331 :: + 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_e63707c2fb10a331 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1495: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_e63707c2fb10a331 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_bf09f1e49ba2dbb4" hs_bindgen_bf09f1e49ba2dbb4 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1497: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_bf09f1e49ba2dbb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_d4812f3e4d4a436b" hs_bindgen_d4812f3e4d4a436b :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1499: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_d4812f3e4d4a436b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_2e009b54c5d5d63f" hs_bindgen_2e009b54c5d5d63f :: + 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_2e009b54c5d5d63f + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_2e009b54c5d5d63f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_2a885c7c98986554" hs_bindgen_2a885c7c98986554 :: + 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_2a885c7c98986554 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1507: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_2a885c7c98986554 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_1ac539cc02ad1b84" hs_bindgen_1ac539cc02ad1b84 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1509: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_1ac539cc02ad1b84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_b283405df7026f65" hs_bindgen_b283405df7026f65 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1511: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_b283405df7026f65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_25417cccd0d87a4c" hs_bindgen_25417cccd0d87a4c :: + 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_25417cccd0d87a4c + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_25417cccd0d87a4c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_8b642d838d5161f7" hs_bindgen_8b642d838d5161f7 :: + 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_8b642d838d5161f7 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1519: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_8b642d838d5161f7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_7995b739d8d8df22" hs_bindgen_7995b739d8d8df22 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1521: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_7995b739d8d8df22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3dc197cbf51377d4" hs_bindgen_3dc197cbf51377d4 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1523: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_3dc197cbf51377d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_aef52034ed0b8658" hs_bindgen_aef52034ed0b8658 :: + 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_aef52034ed0b8658 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1530: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_aef52034ed0b8658 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_fb6481ce015cd02e" hs_bindgen_fb6481ce015cd02e :: + 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_fb6481ce015cd02e + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1533: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_fb6481ce015cd02e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_cdd83b7345980ddc" hs_bindgen_cdd83b7345980ddc :: + 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_cdd83b7345980ddc + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_cdd83b7345980ddc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_c4c100fba29634d3" hs_bindgen_c4c100fba29634d3 :: + 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_c4c100fba29634d3 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1541: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_c4c100fba29634d3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_4c1032d0b2ec3fa7" hs_bindgen_4c1032d0b2ec3fa7 :: + 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:1545: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_4c1032d0b2ec3fa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_6366df11caf3b27b" hs_bindgen_6366df11caf3b27b :: + 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:1549: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_6366df11caf3b27b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_fbc8b413728f647e" hs_bindgen_fbc8b413728f647e :: + 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_fbc8b413728f647e + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1556: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_fbc8b413728f647e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_3f01ca09f3188f8d" hs_bindgen_3f01ca09f3188f8d :: + 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_3f01ca09f3188f8d + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1559: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_3f01ca09f3188f8d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_4204af479d35411e" hs_bindgen_4204af479d35411e :: + 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_4204af479d35411e + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1566: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_4204af479d35411e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_9498f63dd4acaae1" hs_bindgen_9498f63dd4acaae1 :: + 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_9498f63dd4acaae1 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1572: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_9498f63dd4acaae1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_f2507ab52b006950" hs_bindgen_f2507ab52b006950 :: + 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_f2507ab52b006950 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1582: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_f2507ab52b006950 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_68f6376ce4ed19b7" hs_bindgen_68f6376ce4ed19b7 :: + 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_68f6376ce4ed19b7 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1585: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_68f6376ce4ed19b7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_5e69554b96c93186" hs_bindgen_5e69554b96c93186 :: + 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_5e69554b96c93186 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1592: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_5e69554b96c93186 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_c10c780f97643e4b" hs_bindgen_c10c780f97643e4b :: + 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_c10c780f97643e4b + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1595: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_c10c780f97643e4b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_9d8d1100b681f27a" hs_bindgen_9d8d1100b681f27a :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1601: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_9d8d1100b681f27a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_3bf00cffd88b5257" hs_bindgen_3bf00cffd88b5257 :: + 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:1604: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_3bf00cffd88b5257 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_67b904450839a344" hs_bindgen_67b904450839a344 :: + 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:1607: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_67b904450839a344 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_fe28c9a30b762a90" hs_bindgen_fe28c9a30b762a90 :: + 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:1610: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_fe28c9a30b762a90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_5c13450bbc34014f" hs_bindgen_5c13450bbc34014f :: + 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:1613: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_5c13450bbc34014f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_ae5f2c7aa1df0c43" hs_bindgen_ae5f2c7aa1df0c43 :: + 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:1616: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_ae5f2c7aa1df0c43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_b6f48c160f95e463" hs_bindgen_b6f48c160f95e463 :: + 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:1619: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_b6f48c160f95e463 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_71539fe2e9cbe5e5" hs_bindgen_71539fe2e9cbe5e5 :: + 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:1623: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_71539fe2e9cbe5e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_1757a44b1cad10cd" hs_bindgen_1757a44b1cad10cd :: + 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:1627: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_1757a44b1cad10cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_b03e5200c87a08b9" hs_bindgen_b03e5200c87a08b9 :: + 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:1630: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_b03e5200c87a08b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_79b2b70540c5bc2c" hs_bindgen_79b2b70540c5bc2c :: + 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:1637: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_79b2b70540c5bc2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_bb5d29ad5d628a69" hs_bindgen_bb5d29ad5d628a69 :: + 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:1645: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_bb5d29ad5d628a69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_2ab278d6f7f5912c" hs_bindgen_2ab278d6f7f5912c :: + 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:1650: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_2ab278d6f7f5912c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_d8e0d7fa6e3656ac" hs_bindgen_d8e0d7fa6e3656ac :: + 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:1653: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_d8e0d7fa6e3656ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_5f6f6e8cba803cb1" hs_bindgen_5f6f6e8cba803cb1 :: + 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_5f6f6e8cba803cb1 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1656: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_5f6f6e8cba803cb1 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_7953f73298185084" hs_bindgen_7953f73298185084 :: + 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:1669: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_7953f73298185084 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_645cc091d66c0008" hs_bindgen_645cc091d66c0008 :: + 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:1674: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_645cc091d66c0008 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_f745a145f86f8fd9" hs_bindgen_f745a145f86f8fd9 :: + 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:1677: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_f745a145f86f8fd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_ea14e533b7011d97" hs_bindgen_ea14e533b7011d97 :: + 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_ea14e533b7011d97 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1680: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_ea14e533b7011d97 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_a03244c863fcc0dd" hs_bindgen_a03244c863fcc0dd :: + 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:1692: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_a03244c863fcc0dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_254873e7b8573979" hs_bindgen_254873e7b8573979 :: + 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:1697: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_254873e7b8573979 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_669db7f9afe05505" hs_bindgen_669db7f9afe05505 :: + 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:1699: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_669db7f9afe05505 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_a2534281adec93c1" hs_bindgen_a2534281adec93c1 :: + 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_a2534281adec93c1 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1701: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_a2534281adec93c1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_d8b9df966d50d73e" hs_bindgen_d8b9df966d50d73e :: + 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:1704: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_d8b9df966d50d73e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_9c073dbaa7e366bd" hs_bindgen_9c073dbaa7e366bd :: + 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:1712: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_9c073dbaa7e366bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_249341cd424de660" hs_bindgen_249341cd424de660 :: + 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:1720: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_249341cd424de660 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_97d490431b739cc7" hs_bindgen_97d490431b739cc7 :: + 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_97d490431b739cc7 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1722: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_97d490431b739cc7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_483a4999c08895c7" hs_bindgen_483a4999c08895c7 :: + 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_483a4999c08895c7 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1723: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_483a4999c08895c7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_41a8fa8847acd5b5" hs_bindgen_41a8fa8847acd5b5 :: + 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:1731: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_41a8fa8847acd5b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_05ae0658ac3afbce" hs_bindgen_05ae0658ac3afbce :: + 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:1736: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_05ae0658ac3afbce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_73ab0c5b71187813" hs_bindgen_73ab0c5b71187813 :: + 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:1738: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_73ab0c5b71187813 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_2318ff8819394005" hs_bindgen_2318ff8819394005 :: + 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:1741: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_2318ff8819394005 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_eed233e8f65f2009" hs_bindgen_eed233e8f65f2009 :: + 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:1743: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_eed233e8f65f2009 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_16b65e0ae318e4af" hs_bindgen_16b65e0ae318e4af :: + 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_16b65e0ae318e4af + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1746: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_16b65e0ae318e4af x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_53b0d8013ccb40e3" hs_bindgen_53b0d8013ccb40e3 :: + 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:1760: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_53b0d8013ccb40e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_8ab0380c34d4c6b9" hs_bindgen_8ab0380c34d4c6b9 :: + 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:1765: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_8ab0380c34d4c6b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_f971d4ed53995acd" hs_bindgen_f971d4ed53995acd :: + 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:1768: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_f971d4ed53995acd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_9d83d38bbe90d0dc" hs_bindgen_9d83d38bbe90d0dc :: + 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:1773: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_9d83d38bbe90d0dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_efb05cbc40d45569" hs_bindgen_efb05cbc40d45569 :: + 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_efb05cbc40d45569 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1777: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_efb05cbc40d45569 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_7fa8161e34a11d66" hs_bindgen_7fa8161e34a11d66 :: + 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:1790: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_7fa8161e34a11d66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_8a2a3284d64a2d91" hs_bindgen_8a2a3284d64a2d91 :: + 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:1795: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_8a2a3284d64a2d91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_c89f45dd35a99693" hs_bindgen_c89f45dd35a99693 :: + 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:1798: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_c89f45dd35a99693 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_499b8aff3101814c" hs_bindgen_499b8aff3101814c :: + 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_499b8aff3101814c + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1803: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_499b8aff3101814c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_67f46e006e63eded" hs_bindgen_67f46e006e63eded :: + 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:1816: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_67f46e006e63eded + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_16342d1ab5224e5b" hs_bindgen_16342d1ab5224e5b :: + 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_16342d1ab5224e5b + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1823: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_16342d1ab5224e5b x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_ed7d783c377fc771" hs_bindgen_ed7d783c377fc771 :: + 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_ed7d783c377fc771 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1838: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_ed7d783c377fc771 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_7bf6b24f6cc63a2f" hs_bindgen_7bf6b24f6cc63a2f :: + 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_7bf6b24f6cc63a2f + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1853: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_7bf6b24f6cc63a2f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_dd3e0f448116fa20" hs_bindgen_dd3e0f448116fa20 :: + 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:1854: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_dd3e0f448116fa20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_1a961b605b95dc3d" hs_bindgen_1a961b605b95dc3d :: + 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:1859: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_1a961b605b95dc3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_e1a28a62b7276f0d" hs_bindgen_e1a28a62b7276f0d :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1861: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_e1a28a62b7276f0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_55f3b0ebee4faebf" hs_bindgen_55f3b0ebee4faebf :: + 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:1864: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_55f3b0ebee4faebf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_8ab0884992bdc52c" hs_bindgen_8ab0884992bdc52c :: + 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:1865: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_8ab0884992bdc52c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_ea19f0ff7b57311f" hs_bindgen_ea19f0ff7b57311f :: + 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:1867: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_ea19f0ff7b57311f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_ef964b3ce6ea24e8" hs_bindgen_ef964b3ce6ea24e8 :: + 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:1868: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_ef964b3ce6ea24e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_48b0a73ab7db01af" hs_bindgen_48b0a73ab7db01af :: + 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:1871: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_48b0a73ab7db01af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_8a37d02b601d2d38" hs_bindgen_8a37d02b601d2d38 :: + 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:1873: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_8a37d02b601d2d38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_cd3742bed0c9acb0" hs_bindgen_cd3742bed0c9acb0 :: + 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:1874: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_cd3742bed0c9acb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_311f218970b56916" hs_bindgen_311f218970b56916 :: + 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:1875: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_311f218970b56916 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_934a4e0bfc72914e" hs_bindgen_934a4e0bfc72914e :: + 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:1877: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_934a4e0bfc72914e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_838bbae81c27860e" hs_bindgen_838bbae81c27860e :: + 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:1880: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_838bbae81c27860e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_92ba761d680c369c" hs_bindgen_92ba761d680c369c :: + 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:1882: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_92ba761d680c369c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_7ad269c4f70e989a" hs_bindgen_7ad269c4f70e989a :: + 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:1885: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_7ad269c4f70e989a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_286f5e1d0c327484" hs_bindgen_286f5e1d0c327484 :: + 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:1889: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_286f5e1d0c327484 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_15e52b391f34ee70" hs_bindgen_15e52b391f34ee70 :: + 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:1892: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_15e52b391f34ee70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_9c70818e6eb09c0c" hs_bindgen_9c70818e6eb09c0c :: + 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:1895: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_9c70818e6eb09c0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_4221367e426d0e92" hs_bindgen_4221367e426d0e92 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1911: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_4221367e426d0e92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_6cbbd519e7b44fdd" hs_bindgen_6cbbd519e7b44fdd :: + 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:1917: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_6cbbd519e7b44fdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_80a53169ac50b0c9" hs_bindgen_80a53169ac50b0c9 :: + 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:1928: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_80a53169ac50b0c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_7aa3399b8dd8d311" hs_bindgen_7aa3399b8dd8d311 :: + 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:1943: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_7aa3399b8dd8d311 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_69055a178c1ef053" hs_bindgen_69055a178c1ef053 :: + 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:1951: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_69055a178c1ef053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_6f54e6deec50a08a" hs_bindgen_6f54e6deec50a08a :: + 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_6f54e6deec50a08a + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1953: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_6f54e6deec50a08a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_0e3327fe71c72f08" hs_bindgen_0e3327fe71c72f08 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1955: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_0e3327fe71c72f08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_6c8afce3240f5530" hs_bindgen_6c8afce3240f5530 :: + 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:1961: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_6c8afce3240f5530 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_f0b4cdd8b430e0a2" hs_bindgen_f0b4cdd8b430e0a2 :: + 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:1968: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_f0b4cdd8b430e0a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_593d3159e7ccc00f" hs_bindgen_593d3159e7ccc00f :: + 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_593d3159e7ccc00f + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1986: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_593d3159e7ccc00f (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_2e54e4936e72db19" hs_bindgen_2e54e4936e72db19 :: + 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_2e54e4936e72db19 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1995: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_2e54e4936e72db19 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_d8c1974d08622309" hs_bindgen_d8c1974d08622309 :: + 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_d8c1974d08622309 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2003: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_d8c1974d08622309 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_04523156f1a01491" hs_bindgen_04523156f1a01491 :: + 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_04523156f1a01491 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2013: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_04523156f1a01491 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_6d9795816ba22498" hs_bindgen_6d9795816ba22498 :: + 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_6d9795816ba22498 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2032: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_6d9795816ba22498 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_2951449d25b06c1b" hs_bindgen_2951449d25b06c1b :: + 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:2039:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_2951449d25b06c1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_ef83af0bd560db09" hs_bindgen_ef83af0bd560db09 :: + 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:2045: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_ef83af0bd560db09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_8e871415188717c0" hs_bindgen_8e871415188717c0 :: + 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:2051: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_8e871415188717c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_572f152f0ae933db" hs_bindgen_572f152f0ae933db :: + 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_572f152f0ae933db + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2064: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_572f152f0ae933db x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_bcd2b98e8bf24729" hs_bindgen_bcd2b98e8bf24729 :: + 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:2072:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_bcd2b98e8bf24729 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_4210c13c12abcd47" hs_bindgen_4210c13c12abcd47 :: + 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:2081: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_4210c13c12abcd47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_7e17beb4da7aaef2" hs_bindgen_7e17beb4da7aaef2 :: + 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:2092: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_7e17beb4da7aaef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_c3eae74c7b55ecb7" hs_bindgen_c3eae74c7b55ecb7 :: + 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_c3eae74c7b55ecb7 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2103: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_c3eae74c7b55ecb7 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_1cc96ecac14d3c7c" hs_bindgen_1cc96ecac14d3c7c :: + 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:2110:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_1cc96ecac14d3c7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_9d240e27eee3e15c" hs_bindgen_9d240e27eee3e15c :: + 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_9d240e27eee3e15c + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2113: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_9d240e27eee3e15c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_2a732d0b4f6e35ef" hs_bindgen_2a732d0b4f6e35ef :: + 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_2a732d0b4f6e35ef + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2116: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_2a732d0b4f6e35ef x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_216bd3385fdda48d" hs_bindgen_216bd3385fdda48d :: + 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:2128: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_216bd3385fdda48d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_d5e9682c4c1e78a7" hs_bindgen_d5e9682c4c1e78a7 :: + 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:2136: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_d5e9682c4c1e78a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_163dd1b529143d69" hs_bindgen_163dd1b529143d69 :: + 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_163dd1b529143d69 + +{-| 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:2151: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_163dd1b529143d69 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_9223ba8def9a63ca" hs_bindgen_9223ba8def9a63ca :: + 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_9223ba8def9a63ca + +{-| 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:2170: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_9223ba8def9a63ca x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_fa854adcf0803ef2" hs_bindgen_fa854adcf0803ef2 :: + 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_fa854adcf0803ef2 + +{-| 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:2186: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_fa854adcf0803ef2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_6ea9a5bd86c386eb" hs_bindgen_6ea9a5bd86c386eb :: + 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_6ea9a5bd86c386eb + +{-| 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:2213: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_6ea9a5bd86c386eb 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_7_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_733abc7c73d6c804" hs_bindgen_733abc7c73d6c804 :: + 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:2231: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_733abc7c73d6c804 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_532433abf8c58531" hs_bindgen_532433abf8c58531 :: + 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:2252: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_532433abf8c58531 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_d3f6fc8ba321fcba" hs_bindgen_d3f6fc8ba321fcba :: + 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:2273: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_d3f6fc8ba321fcba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_f91654fbe36c7d48" hs_bindgen_f91654fbe36c7d48 :: + 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:2298:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_f91654fbe36c7d48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_d2449b5450dfe345" hs_bindgen_d2449b5450dfe345 :: + 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:2306: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_d2449b5450dfe345 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_de714ebcdfcbb0a3" hs_bindgen_de714ebcdfcbb0a3 :: + 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:2316: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_de714ebcdfcbb0a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_6e6e05a0c13a9eb7" hs_bindgen_6e6e05a0c13a9eb7 :: + 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:2327: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_6e6e05a0c13a9eb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_582cecb66e819781" hs_bindgen_582cecb66e819781 :: + 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:2339: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_582cecb66e819781 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_739d1922e137f657" hs_bindgen_739d1922e137f657 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2346: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_739d1922e137f657 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_29f30f9544d4ec0b" hs_bindgen_29f30f9544d4ec0b :: + 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:2360: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_29f30f9544d4ec0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_8a00e4b0ea5ff405" hs_bindgen_8a00e4b0ea5ff405 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2372: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_8a00e4b0ea5ff405 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_c24252078914c481" hs_bindgen_c24252078914c481 :: + 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:2383: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_c24252078914c481 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_ce921d3467016c6a" hs_bindgen_ce921d3467016c6a :: + 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:2395: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_ce921d3467016c6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_0_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_cb29f0ed9ed86173" hs_bindgen_cb29f0ed9ed86173 :: + 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:2402: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_cb29f0ed9ed86173 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1.hs new file mode 100644 index 00000000..076acb89 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1.hs @@ -0,0 +1,1627 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_7_1 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:71:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20240408 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:113: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 + +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") + , (-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:114: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:115: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:117: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:118: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:120: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:121: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:123: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:124: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:125: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:126: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:128: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:129: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:130: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:131: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:132: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:133: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:135: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:136: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:138: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:139: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:140: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:141: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:143: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:146: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' + +__defined at:__ @botan\/ffi.h:155:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:155: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:164:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:164: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:237:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:272:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:272: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:362:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:362: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:442:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:442: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:538:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:538: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:540: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:541: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:542: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:635: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:836:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:836: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:902:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:902: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1099:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1099: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:1112: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:1182: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:1183: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:1184:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1319:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1319: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1642:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1642: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1666:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1666: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:1687:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1689:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1689: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1709:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1709: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1728:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1728: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1757: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:1757: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1787: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:1787: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1851:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1851: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1898: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 + +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:1899: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:1900: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:1901: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:1902: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:1903: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:1904: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:1905: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:1906: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:1907: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:1908: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1949:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1949: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2026:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2026: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2058:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2058: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2098:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2098: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:2100: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2121: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:2121: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2279:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2279: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2284:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2284: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:__ @botan_tpm2_crypto_backend_state_struct@ + + __defined at:__ @botan\/ffi.h:2289: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:2289: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:__ @ESYS_CONTEXT@ + + __defined at:__ @botan\/ffi.h:2291: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_7_1/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/FunPtr.hs new file mode 100644 index 00000000..4be08ad5 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/FunPtr.hs @@ -0,0 +1,9263 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_7_1.FunPtr where + +import Botan.Bindings.Generated.Botan_3_7_1 +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_7_1_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_c6bc2de3550feb1d (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_34e415a772e61a4e (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_bff72d57ea972bdd (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b4f959b62c92f31 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_d154020aa5e9f1e3 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_3c0c00dff5ca1d00 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_3fffc6ecb2def24f (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_260e93467edd133e (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_c2281ddb4615acb6 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_981c616a4a798f79 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1febe3f311bc31b (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b541e5476abc820 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78c0dfff5740b657 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e3ec2e79b0ab668 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f56209b381c8458b (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea62339c177c8617 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_396f9f1f94cfae4f (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c01f15acef29d5e5 (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_7_1_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_501332db48717cc9 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ef60d61e35f337f (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a64c1c679834640c (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cef9692a9ba897d0 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16f2778c628440a1 (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78a731cd867bb96d (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bec09ad00839b54c (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4904a74e019d5110 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e03dc11ba9d768a0 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb2e268406069692 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb20e91128ed64fc (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ce936962910382f (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d1d2e430517f3d8 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2a2ab536ec0e953 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f68cd0c74cac71de (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2408db09e0a73f12 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6956e042af9e1b6e (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff6729ecd1e7aa61 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19dd2cd23fa34289 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d522ff08d9d04921 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ff34a68cc0daa8a (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9f571c54224a53d (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e7076529086ee7d (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d960eb27b33eefe (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_7_1_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92dfb5f5a100894d (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3682562ea4428b51 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fcbf2b0359f4d5d (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_390efc031ba9cc39 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_08ab9b9e15e607d4 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1376d0cd09840f51 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2b05df29ff40f4d7 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7b0e81b40edaf51 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c402d36db3f005f (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64c3da8ddcd1196c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4452b313fd4f6c83 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7e1b48b3953067c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5524e61318d3c84b (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_7_1_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_670ca6e1db695903 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0e250616e66507d (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27d25b24a9d4652f (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ac5cc0869ef9e87f (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10efef9b90e00c69 (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_7_1_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04bba2f1c9cf84f8 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1162fa9471f6a514 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f05d5ccef5accd90 (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_7_1_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fdfdb938984e497c (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_7_1_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c94fc1a3b7edb088 (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_7_1_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1da1574e58df368f (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_7_1_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8dd814f13d880109 (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_7_1_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c5f565f6d3ed6bf (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_7_1_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1e69d1a4c6faee0 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a14400e97539a060 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ca323f102925282 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec363accd580cee0 (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_7_1_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8fc8f3262453ac0 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4485a7bd40e29e08 (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_7_1_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6463276d0800cf5a (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_7_1_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68e08dd1d9eb3019 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe2c21ea35ae8f81 (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_7_1_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ffa980070102a68 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1055c0b42fcbaeeb (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5273cb4b2355bbc6 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9501785a0fe6760 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57642c7ef10bbc7f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f527a597c6d73e90 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9f0ab0b808f592a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5476e1cad349d0e (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef1a8bc4c78b9b44 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c17ed0137b5d5016 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4917b21591440890 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_656d4becfd2d19a6 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8c07663788f226fe (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_85803f30f679c46c (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14c47838ffab7848 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6070721ad2d446b7 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4df3e663ab8416d2 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37933c809fd8c559 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee4117a7f69e35fd (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9635231a5cdcc252 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c42238d6c736ae0a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d426b2540724ad50 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db56868c3f6e9cfc (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94dce8e47c3b50cf (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2d37a11c5874936 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c34079e4add8f23c (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_7_1_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92eb8f8ae352490d (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_7_1_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbe4183715de079b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e10c1a4ef3840c0 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e90a31d0d94c19ca (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9b2304da99fee03 (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_7_1_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92dfe3d14e409344 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22f4ab091fee49eb (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d3b36079086c19b0 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f955217748e8d313 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bbe3fff9468c19a2 (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_7_1_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d3298712ec98cdb (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b26b2183ba422b78 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25d0a68ac2d9e36a (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_347a02ba9e020f33 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53c68b4ebcecd0b8 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e43448116b940638 (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_7_1_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb5ccaba607ea776 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_726c8f103b12d2b9 (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_7_1_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03748c3c51d110ca (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7ba1ed8121633a9 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e0b34879e09b61b (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca8f626ae154e6f5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98b80220858b7e02 (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_7_1_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f568916473a1cec (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1829e9584463c460 (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_7_1_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8133028d910b2015 (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_7_1_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_856821b2fb4cd94a (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_7_1_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf4e37948f1febf4 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_789b29ff14c53650 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_619c6d1e70b87dc5 (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_7_1_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa44840a1d300162 (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_7_1_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ea4c644d727bf0c (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_7_1_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90aeb734c739c0dd (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a83aacb197ddfa4f (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_7_1_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f33d5e122eeec835 (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_7_1_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4f65d3ce309399c (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_7_1_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f77f9f909c8fdfa7 (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_7_1_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f48aab4e7ad12ab (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_7_1_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38e4c1837916e267 (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_7_1_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb5e82650a6abb71 (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_7_1_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c181428d7ca3b070 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ce92a901004fedd (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5adce9ef7a20f3e1 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d943895bd069bba5 (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_7_1_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c3598e20091592e9 (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_7_1_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0cd1bf4ca701e113 (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_7_1_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7731f1fac9998692 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4963fc77e8349a49 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce45ed487487650d (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1645848b0e944984 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2309aceec49ce4f2 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e805023a695fcc9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6f9fe0a95d9e320 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc53238b072d69b8 (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_7_1_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_965c9e24b4e88ae2 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f277afffaecad20 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44f061f53598aa33 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54403b9565a26cde (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_340c9ee13f8e602e (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b11752387e126423 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25fe01ae62222609 (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_7_1_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_022e3f1c5bbb7aaf (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0154ffe4816a41e4 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27eded66d1132657 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2095005e863750a3 (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_7_1_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b5fda28648b901c (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_7_1_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f5afae194926678 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2cf1f925f3d2c14 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b33a32218111900 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e0690d082726626 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_527f46303ee6ba73 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4b7956c36fb23b9 (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_7_1_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4166c8f369f5f8c (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_7_1_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2ff7575f9665af8 (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_7_1_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6294b8fcb040529e (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_7_1_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94d039df8b85d60a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56c1a182f5431f16 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_89f961670a8a832f (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_384b29b043204399 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d784b491ba53335 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ac15394a013564af (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_343e3a5d47e596e0 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7f0fbf95e1dd0e0 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb1bc64d79d10009 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98e33d65870d0133 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57a4191125cbf032 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_698cb22f9948c09f (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4eefada85240799f (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_682e57a7b0e3ed94 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_560bb5f1dcd8f4c0 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0be1d2ff1f0bc054 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc495c82cc7d2668 (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_7_1_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1fd931424d599480 (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_7_1_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e96f9c1356e4836d (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2dfaafcf443aa706 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c029892fcabcbf2c (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_7_1_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f159028bf6595756 (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_7_1_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b2a2521650761e5 (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_7_1_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16de074972e3d1e9 (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_7_1_get_botan_privkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f169e174a4524a6a (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_7_1_get_botan_pubkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fda31c950868ada (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_7_1_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a18e4aa3837d7aba (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_7_1_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c7edab9e7a76219 (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_7_1_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88c14094e6df82ce (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_7_1_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d91bb78531f05a0e (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_7_1_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b84531ce9f94b90d (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4b1d1ff9e11c4ba (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9af2c9c79b21ec89 (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_7_1_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d79b72e5ae13937 (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_7_1_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7733bbe7c222560b (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_adc78fd6243df0f8 (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_7_1_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7a0bdb313d5d116 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7ced1bb440f7030 (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_7_1_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a808198dcad4b6d1 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ea6a8bea7a95027 (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_7_1_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_154873b9612c1450 (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_7_1_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b7535be43f3caf3 (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_7_1_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc67d01cc2369722 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09015e9d73034a03 (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_7_1_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_891d8230b9c88593 (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_7_1_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69bbba0c9c9ef152 (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_7_1_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3854256ecf4b1904 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cca30e9749fbb689 (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_7_1_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ccd8301a2cd002fc (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_7_1_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19ca09688b04093d (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_7_1_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b2c147f82aa1e0c (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_179124cd34f2caef (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d72a2e8bfcdfdcf6 (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_7_1_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4891c61f2ae4377c (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_7_1_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_edd1c92d6832781a (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_7_1_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8382065547a7fd13 (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6abcd97f362ccc25 (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_7_1_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_079f14c4260a4d59 (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_7_1_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8379d404ffa3bc27 (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_7_1_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e427a0b777e554f (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34e3a74c46951e8c (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_7_1_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7070ee7ae669a68 (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_7_1_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2caac9190a784c46 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_942fdbbbcce65d37 (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_7_1_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb460c320d247d19 (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_7_1_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab1e411c4252516f (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aaebf974d7802331 (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_7_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a82a4fd8911f3eb2 (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_7_1_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15989465de02840f (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_7_1_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ea8122db9e41a5e (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_7_1_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4fe35ab0741e417 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c2bc3b71d663765 (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_7_1_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50bdfd21653a07de (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_7_1_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_991c2a5aa04072f3 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_875dd6b5e58ccfbd (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_7_1_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e4e071c9e609010 (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_7_1_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c40230255a6c2fb1 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dcea500f1b637afa (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ec72fbff9db7bcb (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_836b57e392acb243 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e70c36de6959fa0 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ac91c1f748f21e2 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_283af006cc6a95dc (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14e674d95a12af16 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9793357a7ac2b97b (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_7_1_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7881a188219b48f (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_7_1_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_079f1e82294ddd85 (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_7_1_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98855c72700b1ac6 (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_7_1_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a012842bcc0786f (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_7_1_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e81440549fa5918 (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_7_1_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4dad6c417832ca7 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09b0a700f979a546 (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_7_1_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7eebb7d6b9751fa2 (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_7_1_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd96f83565d22474 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b6d951fda5221b1 (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_7_1_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58b00d3b3da19559 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41c89978a80942f3 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab3905746b03830f (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_7_1_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_286d57ddefc5c8d4 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6160f2d71a07535d (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c67b7e3bf904560 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_641d82112f587714 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd091e493a3fa821 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49b4ea6446345b0c (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_7_1_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f8adf15de4b7b619 (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_7_1_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37f4027272315c88 (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_7_1_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9706d6681220cc0 (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_7_1_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98c03d27e19dfb13 (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_7_1_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65935d52e44c7642 (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_7_1_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4336be4b5656a401 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4de6cc1f949c1c2c (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e055b0a9ef0dcd3 (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_7_1_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2f18f66f9d3ca00 (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_7_1_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52349942367a7806 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ce18d97bd87429d (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3bc1b5c05256eae (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9afbdf4016ccbe79 (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_7_1_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9bb8676728b1e35 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f8f15385ee19724 (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_7_1_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c391461a02973c26 (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_7_1_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aff31a463ad37141 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_859232d7eef63113 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a96f900c15c9db63 (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_7_1_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f600fdb3ca256ba (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_7_1_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1b869d98bbac558 (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_7_1_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c47a7f9338428aa2 (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_7_1_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9023e2f0657191d (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b971190e997a0f5 (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_7_1_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b345ef4ded5fc464 (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_7_1_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_678cf53c2202b765 (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce8481d90b5f1f3f (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bf6f365508aa91e (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_from_esys */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7898d010b5bc40a6 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_from_esys;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6dd9bf81730bbd39 (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a3a4750c4824f47 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_108f4b80e9a03011 (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_7_1_get_botan_tpm2_crypto_backend_state_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7078462265233af (void)) (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return &botan_tpm2_crypto_backend_state_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23c8610e16da9cb5 (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_7_1_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c0e87485fb40a10 (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d41f9557674c560 (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_c6bc2de3550feb1d" hs_bindgen_c6bc2de3550feb1d :: + 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:170: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_c6bc2de3550feb1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_34e415a772e61a4e" hs_bindgen_34e415a772e61a4e :: + 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:179: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_34e415a772e61a4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_bff72d57ea972bdd" hs_bindgen_bff72d57ea972bdd :: + 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:186: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_bff72d57ea972bdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_3b4f959b62c92f31" hs_bindgen_3b4f959b62c92f31 :: + 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:192: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_3b4f959b62c92f31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_d154020aa5e9f1e3" hs_bindgen_d154020aa5e9f1e3 :: + 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:197: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_d154020aa5e9f1e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_3c0c00dff5ca1d00" hs_bindgen_3c0c00dff5ca1d00 :: + 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:202: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_3c0c00dff5ca1d00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_3fffc6ecb2def24f" hs_bindgen_3fffc6ecb2def24f :: + 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:207: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_3fffc6ecb2def24f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_260e93467edd133e" hs_bindgen_260e93467edd133e :: + 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:212: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_260e93467edd133e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_c2281ddb4615acb6" hs_bindgen_c2281ddb4615acb6 :: + 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:218: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_c2281ddb4615acb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_981c616a4a798f79" hs_bindgen_981c616a4a798f79 :: + 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:223: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_981c616a4a798f79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_b1febe3f311bc31b" hs_bindgen_b1febe3f311bc31b :: + 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:229: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_b1febe3f311bc31b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_5b541e5476abc820" hs_bindgen_5b541e5476abc820 :: + 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:235: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_5b541e5476abc820 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_78c0dfff5740b657" hs_bindgen_78c0dfff5740b657 :: + 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:247: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_78c0dfff5740b657 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_0e3ec2e79b0ab668" hs_bindgen_0e3ec2e79b0ab668 :: + 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:257: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_0e3ec2e79b0ab668 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_f56209b381c8458b" hs_bindgen_f56209b381c8458b :: + 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:262: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_f56209b381c8458b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_ea62339c177c8617" hs_bindgen_ea62339c177c8617 :: + 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:267: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_ea62339c177c8617 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_396f9f1f94cfae4f" hs_bindgen_396f9f1f94cfae4f :: + 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:286: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_396f9f1f94cfae4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_c01f15acef29d5e5" hs_bindgen_c01f15acef29d5e5 :: + 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:298: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_c01f15acef29d5e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_501332db48717cc9" hs_bindgen_501332db48717cc9 :: + 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:312: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_501332db48717cc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_5ef60d61e35f337f" hs_bindgen_5ef60d61e35f337f :: + 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:320: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_5ef60d61e35f337f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_a64c1c679834640c" hs_bindgen_a64c1c679834640c :: + 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:330: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_a64c1c679834640c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_cef9692a9ba897d0" hs_bindgen_cef9692a9ba897d0 :: + 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:340: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_cef9692a9ba897d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_16f2778c628440a1" hs_bindgen_16f2778c628440a1 :: + 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:350: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_16f2778c628440a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_78a731cd867bb96d" hs_bindgen_78a731cd867bb96d :: + 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:357: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_78a731cd867bb96d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_bec09ad00839b54c" hs_bindgen_bec09ad00839b54c :: + 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:371: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_bec09ad00839b54c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_4904a74e019d5110" hs_bindgen_4904a74e019d5110 :: + 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:379: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_4904a74e019d5110 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_e03dc11ba9d768a0" hs_bindgen_e03dc11ba9d768a0 :: + 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:387: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_e03dc11ba9d768a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_bb2e268406069692" hs_bindgen_bb2e268406069692 :: + 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:395: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_bb2e268406069692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_bb20e91128ed64fc" hs_bindgen_bb20e91128ed64fc :: + 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:404: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_bb20e91128ed64fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_1ce936962910382f" hs_bindgen_1ce936962910382f :: + 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:414: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_1ce936962910382f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_4d1d2e430517f3d8" hs_bindgen_4d1d2e430517f3d8 :: + 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:422: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_4d1d2e430517f3d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_a2a2ab536ec0e953" hs_bindgen_a2a2ab536ec0e953 :: + 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:429: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_a2a2ab536ec0e953 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_f68cd0c74cac71de" hs_bindgen_f68cd0c74cac71de :: + 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:437: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_f68cd0c74cac71de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_2408db09e0a73f12" hs_bindgen_2408db09e0a73f12 :: + 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:452: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_2408db09e0a73f12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_6956e042af9e1b6e" hs_bindgen_6956e042af9e1b6e :: + 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:460: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_6956e042af9e1b6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_ff6729ecd1e7aa61" hs_bindgen_ff6729ecd1e7aa61 :: + 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:469: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_ff6729ecd1e7aa61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_19dd2cd23fa34289" hs_bindgen_19dd2cd23fa34289 :: + 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:478: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_19dd2cd23fa34289 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_d522ff08d9d04921" hs_bindgen_d522ff08d9d04921 :: + 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:487: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_d522ff08d9d04921 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_5ff34a68cc0daa8a" hs_bindgen_5ff34a68cc0daa8a :: + 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:497: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_5ff34a68cc0daa8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_b9f571c54224a53d" hs_bindgen_b9f571c54224a53d :: + 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:505: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_b9f571c54224a53d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_5e7076529086ee7d" hs_bindgen_5e7076529086ee7d :: + 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:513: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_5e7076529086ee7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_7d960eb27b33eefe" hs_bindgen_7d960eb27b33eefe :: + 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:523: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_7d960eb27b33eefe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_92dfb5f5a100894d" hs_bindgen_92dfb5f5a100894d :: + 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:533: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_92dfb5f5a100894d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_3682562ea4428b51" hs_bindgen_3682562ea4428b51 :: + 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:547: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_3682562ea4428b51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_6fcbf2b0359f4d5d" hs_bindgen_6fcbf2b0359f4d5d :: + 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:552: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_6fcbf2b0359f4d5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_390efc031ba9cc39" hs_bindgen_390efc031ba9cc39 :: + 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:557: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_390efc031ba9cc39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_08ab9b9e15e607d4" hs_bindgen_08ab9b9e15e607d4 :: + 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:562: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_08ab9b9e15e607d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_1376d0cd09840f51" hs_bindgen_1376d0cd09840f51 :: + 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:567: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_1376d0cd09840f51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_2b05df29ff40f4d7" hs_bindgen_2b05df29ff40f4d7 :: + 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:572: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_2b05df29ff40f4d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_b7b0e81b40edaf51" hs_bindgen_b7b0e81b40edaf51 :: + 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:579: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_b7b0e81b40edaf51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_2c402d36db3f005f" hs_bindgen_2c402d36db3f005f :: + 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:584: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_2c402d36db3f005f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_64c3da8ddcd1196c" hs_bindgen_64c3da8ddcd1196c :: + 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:590: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_64c3da8ddcd1196c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_4452b313fd4f6c83" hs_bindgen_4452b313fd4f6c83 :: + 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:596: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_4452b313fd4f6c83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_b7e1b48b3953067c" hs_bindgen_b7e1b48b3953067c :: + 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:602: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_b7e1b48b3953067c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5524e61318d3c84b" hs_bindgen_5524e61318d3c84b :: + 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:608: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_5524e61318d3c84b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_670ca6e1db695903" hs_bindgen_670ca6e1db695903 :: + 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:613: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_670ca6e1db695903 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_a0e250616e66507d" hs_bindgen_a0e250616e66507d :: + 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:623: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_a0e250616e66507d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_27d25b24a9d4652f" hs_bindgen_27d25b24a9d4652f :: + 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:628: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_27d25b24a9d4652f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_ac5cc0869ef9e87f" hs_bindgen_ac5cc0869ef9e87f :: + 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:633: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_ac5cc0869ef9e87f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_10efef9b90e00c69" hs_bindgen_10efef9b90e00c69 :: + 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:660: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_10efef9b90e00c69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_04bba2f1c9cf84f8" hs_bindgen_04bba2f1c9cf84f8 :: + 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:672: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_04bba2f1c9cf84f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_1162fa9471f6a514" hs_bindgen_1162fa9471f6a514 :: + 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:678: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_1162fa9471f6a514 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_f05d5ccef5accd90" hs_bindgen_f05d5ccef5accd90 :: + 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:697: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_f05d5ccef5accd90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_fdfdb938984e497c" hs_bindgen_fdfdb938984e497c :: + 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:730: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_fdfdb938984e497c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_c94fc1a3b7edb088" hs_bindgen_c94fc1a3b7edb088 :: + 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:754: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_c94fc1a3b7edb088 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_1da1574e58df368f" hs_bindgen_1da1574e58df368f :: + 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:781: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_1da1574e58df368f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_8dd814f13d880109" hs_bindgen_8dd814f13d880109 :: + 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:800: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_8dd814f13d880109 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_6c5f565f6d3ed6bf" hs_bindgen_6c5f565f6d3ed6bf :: + 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:823: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_6c5f565f6d3ed6bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_f1e69d1a4c6faee0" hs_bindgen_f1e69d1a4c6faee0 :: + 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:841: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_f1e69d1a4c6faee0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_a14400e97539a060" hs_bindgen_a14400e97539a060 :: + 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:847: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_a14400e97539a060 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_5ca323f102925282" hs_bindgen_5ca323f102925282 :: + 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:853: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_5ca323f102925282 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_ec363accd580cee0" hs_bindgen_ec363accd580cee0 :: + 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:858: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_ec363accd580cee0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_e8fc8f3262453ac0" hs_bindgen_e8fc8f3262453ac0 :: + 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:864: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_e8fc8f3262453ac0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_4485a7bd40e29e08" hs_bindgen_4485a7bd40e29e08 :: + 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:870: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_4485a7bd40e29e08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_6463276d0800cf5a" hs_bindgen_6463276d0800cf5a :: + 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:876: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_6463276d0800cf5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_68e08dd1d9eb3019" hs_bindgen_68e08dd1d9eb3019 :: + 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:884: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_68e08dd1d9eb3019 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_fe2c21ea35ae8f81" hs_bindgen_fe2c21ea35ae8f81 :: + 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:894: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_fe2c21ea35ae8f81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_8ffa980070102a68" hs_bindgen_8ffa980070102a68 :: + 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:907: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_8ffa980070102a68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_1055c0b42fcbaeeb" hs_bindgen_1055c0b42fcbaeeb :: + 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:913: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_1055c0b42fcbaeeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_5273cb4b2355bbc6" hs_bindgen_5273cb4b2355bbc6 :: + 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:918: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_5273cb4b2355bbc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_b9501785a0fe6760" hs_bindgen_b9501785a0fe6760 :: + 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:923: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_b9501785a0fe6760 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_57642c7ef10bbc7f" hs_bindgen_57642c7ef10bbc7f :: + 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:928: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_57642c7ef10bbc7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_f527a597c6d73e90" hs_bindgen_f527a597c6d73e90 :: + 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:933: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_f527a597c6d73e90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_c9f0ab0b808f592a" hs_bindgen_c9f0ab0b808f592a :: + 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:938: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_c9f0ab0b808f592a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_d5476e1cad349d0e" hs_bindgen_d5476e1cad349d0e :: + 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:943: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_d5476e1cad349d0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_ef1a8bc4c78b9b44" hs_bindgen_ef1a8bc4c78b9b44 :: + 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:949: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_ef1a8bc4c78b9b44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_c17ed0137b5d5016" hs_bindgen_c17ed0137b5d5016 :: + 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:954: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_c17ed0137b5d5016 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_4917b21591440890" hs_bindgen_4917b21591440890 :: + 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:959: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_4917b21591440890 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_656d4becfd2d19a6" hs_bindgen_656d4becfd2d19a6 :: + 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:964: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_656d4becfd2d19a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_8c07663788f226fe" hs_bindgen_8c07663788f226fe :: + 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:969: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_8c07663788f226fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_85803f30f679c46c" hs_bindgen_85803f30f679c46c :: + 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:974: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_85803f30f679c46c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_14c47838ffab7848" hs_bindgen_14c47838ffab7848 :: + 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:981: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_14c47838ffab7848 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_6070721ad2d446b7" hs_bindgen_6070721ad2d446b7 :: + 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:986: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_6070721ad2d446b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_4df3e663ab8416d2" hs_bindgen_4df3e663ab8416d2 :: + 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:988: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_4df3e663ab8416d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_37933c809fd8c559" hs_bindgen_37933c809fd8c559 :: + 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:990: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_37933c809fd8c559 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_ee4117a7f69e35fd" hs_bindgen_ee4117a7f69e35fd :: + 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:992: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_ee4117a7f69e35fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_9635231a5cdcc252" hs_bindgen_9635231a5cdcc252 :: + 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:993: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_9635231a5cdcc252 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_c42238d6c736ae0a" hs_bindgen_c42238d6c736ae0a :: + 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:995: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_c42238d6c736ae0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_d426b2540724ad50" hs_bindgen_d426b2540724ad50 :: + 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:996: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_d426b2540724ad50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_db56868c3f6e9cfc" hs_bindgen_db56868c3f6e9cfc :: + 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:998: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_db56868c3f6e9cfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_94dce8e47c3b50cf" hs_bindgen_94dce8e47c3b50cf :: + 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:999: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_94dce8e47c3b50cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_e2d37a11c5874936" hs_bindgen_e2d37a11c5874936 :: + 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:1000: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_e2d37a11c5874936 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_c34079e4add8f23c" hs_bindgen_c34079e4add8f23c :: + 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:1003: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_c34079e4add8f23c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_92eb8f8ae352490d" hs_bindgen_92eb8f8ae352490d :: + 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:1006: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_92eb8f8ae352490d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_cbe4183715de079b" hs_bindgen_cbe4183715de079b :: + 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:1013: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_cbe4183715de079b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_0e10c1a4ef3840c0" hs_bindgen_0e10c1a4ef3840c0 :: + 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:1020: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_0e10c1a4ef3840c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_e90a31d0d94c19ca" hs_bindgen_e90a31d0d94c19ca :: + 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:1025: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_e90a31d0d94c19ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_a9b2304da99fee03" hs_bindgen_a9b2304da99fee03 :: + 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:1029: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_a9b2304da99fee03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_92dfe3d14e409344" hs_bindgen_92dfe3d14e409344 :: + 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:1031: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_92dfe3d14e409344 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_22f4ab091fee49eb" hs_bindgen_22f4ab091fee49eb :: + 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:1032: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_22f4ab091fee49eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_d3b36079086c19b0" hs_bindgen_d3b36079086c19b0 :: + 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:1034: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_d3b36079086c19b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_f955217748e8d313" hs_bindgen_f955217748e8d313 :: + 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:1036: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_f955217748e8d313 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_bbe3fff9468c19a2" hs_bindgen_bbe3fff9468c19a2 :: + 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:1039: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_bbe3fff9468c19a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_3d3298712ec98cdb" hs_bindgen_3d3298712ec98cdb :: + 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:1041: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_3d3298712ec98cdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_b26b2183ba422b78" hs_bindgen_b26b2183ba422b78 :: + 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:1048: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_b26b2183ba422b78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_25d0a68ac2d9e36a" hs_bindgen_25d0a68ac2d9e36a :: + 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:1055: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_25d0a68ac2d9e36a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_347a02ba9e020f33" hs_bindgen_347a02ba9e020f33 :: + 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:1060: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_347a02ba9e020f33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_53c68b4ebcecd0b8" hs_bindgen_53c68b4ebcecd0b8 :: + 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:1065: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_53c68b4ebcecd0b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_e43448116b940638" hs_bindgen_e43448116b940638 :: + 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:1083: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_e43448116b940638 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_bb5ccaba607ea776" hs_bindgen_bb5ccaba607ea776 :: + 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:1094: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_bb5ccaba607ea776 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_726c8f103b12d2b9" hs_bindgen_726c8f103b12d2b9 :: + 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:1110: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_726c8f103b12d2b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_03748c3c51d110ca" hs_bindgen_03748c3c51d110ca :: + 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:1114: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_03748c3c51d110ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_f7ba1ed8121633a9" hs_bindgen_f7ba1ed8121633a9 :: + 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:1117: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_f7ba1ed8121633a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_5e0b34879e09b61b" hs_bindgen_5e0b34879e09b61b :: + 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:1119: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_5e0b34879e09b61b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_ca8f626ae154e6f5" hs_bindgen_ca8f626ae154e6f5 :: + 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:1121: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_ca8f626ae154e6f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_98b80220858b7e02" hs_bindgen_98b80220858b7e02 :: + 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:1123: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_98b80220858b7e02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_5f568916473a1cec" hs_bindgen_5f568916473a1cec :: + 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:1125: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_5f568916473a1cec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_1829e9584463c460" hs_bindgen_1829e9584463c460 :: + 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:1145: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_1829e9584463c460 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_8133028d910b2015" hs_bindgen_8133028d910b2015 :: + 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:1167: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_8133028d910b2015 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_856821b2fb4cd94a" hs_bindgen_856821b2fb4cd94a :: + 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:1175: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_856821b2fb4cd94a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_cf4e37948f1febf4" hs_bindgen_cf4e37948f1febf4 :: + 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:1180: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_cf4e37948f1febf4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_789b29ff14c53650" hs_bindgen_789b29ff14c53650 :: + 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:1193: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_789b29ff14c53650 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_619c6d1e70b87dc5" hs_bindgen_619c6d1e70b87dc5 :: + 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:1198: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_619c6d1e70b87dc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_fa44840a1d300162" hs_bindgen_fa44840a1d300162 :: + 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:1203: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_fa44840a1d300162 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_0ea4c644d727bf0c" hs_bindgen_0ea4c644d727bf0c :: + 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:1208: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_0ea4c644d727bf0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_90aeb734c739c0dd" hs_bindgen_90aeb734c739c0dd :: + 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:1210: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_90aeb734c739c0dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_a83aacb197ddfa4f" hs_bindgen_a83aacb197ddfa4f :: + 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:1217: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_a83aacb197ddfa4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_f33d5e122eeec835" hs_bindgen_f33d5e122eeec835 :: + 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:1232: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_f33d5e122eeec835 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_a4f65d3ce309399c" hs_bindgen_a4f65d3ce309399c :: + 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:1247: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_a4f65d3ce309399c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_f77f9f909c8fdfa7" hs_bindgen_f77f9f909c8fdfa7 :: + 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:1264: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_f77f9f909c8fdfa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_6f48aab4e7ad12ab" hs_bindgen_6f48aab4e7ad12ab :: + 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:1279: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_6f48aab4e7ad12ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_38e4c1837916e267" hs_bindgen_38e4c1837916e267 :: + 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:1295: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_38e4c1837916e267 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_fb5e82650a6abb71" hs_bindgen_fb5e82650a6abb71 :: + 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:1310: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_fb5e82650a6abb71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_c181428d7ca3b070" hs_bindgen_c181428d7ca3b070 :: + 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:1321: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_c181428d7ca3b070 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_3ce92a901004fedd" hs_bindgen_3ce92a901004fedd :: + 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:1323: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_3ce92a901004fedd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_5adce9ef7a20f3e1" hs_bindgen_5adce9ef7a20f3e1 :: + 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:1325: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_5adce9ef7a20f3e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d943895bd069bba5" hs_bindgen_d943895bd069bba5 :: + 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:1330: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_d943895bd069bba5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_c3598e20091592e9" hs_bindgen_c3598e20091592e9 :: + 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:1335: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_c3598e20091592e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_0cd1bf4ca701e113" hs_bindgen_0cd1bf4ca701e113 :: + 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:1340: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_0cd1bf4ca701e113 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_7731f1fac9998692" hs_bindgen_7731f1fac9998692 :: + 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:1342: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_7731f1fac9998692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_4963fc77e8349a49" hs_bindgen_4963fc77e8349a49 :: + 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:1347: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_4963fc77e8349a49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_ce45ed487487650d" hs_bindgen_ce45ed487487650d :: + 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:1349: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_ce45ed487487650d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_1645848b0e944984" hs_bindgen_1645848b0e944984 :: + 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:1352: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_1645848b0e944984 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_2309aceec49ce4f2" hs_bindgen_2309aceec49ce4f2 :: + 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:1357: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_2309aceec49ce4f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_7e805023a695fcc9" hs_bindgen_7e805023a695fcc9 :: + 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:1362: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_7e805023a695fcc9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_f6f9fe0a95d9e320" hs_bindgen_f6f9fe0a95d9e320 :: + 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:1364: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_f6f9fe0a95d9e320 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_fc53238b072d69b8" hs_bindgen_fc53238b072d69b8 :: + 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:1369: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_fc53238b072d69b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_965c9e24b4e88ae2" hs_bindgen_965c9e24b4e88ae2 :: + 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:1371: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_965c9e24b4e88ae2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_6f277afffaecad20" hs_bindgen_6f277afffaecad20 :: + 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:1374: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_6f277afffaecad20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_44f061f53598aa33" hs_bindgen_44f061f53598aa33 :: + 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:1376: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_44f061f53598aa33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_54403b9565a26cde" hs_bindgen_54403b9565a26cde :: + 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:1378: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_54403b9565a26cde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_340c9ee13f8e602e" hs_bindgen_340c9ee13f8e602e :: + 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:1380: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_340c9ee13f8e602e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_b11752387e126423" hs_bindgen_b11752387e126423 :: + 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:1382: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_b11752387e126423 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_25fe01ae62222609" hs_bindgen_25fe01ae62222609 :: + 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:1385: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_25fe01ae62222609 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_022e3f1c5bbb7aaf" hs_bindgen_022e3f1c5bbb7aaf :: + 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:1387: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_022e3f1c5bbb7aaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_0154ffe4816a41e4" hs_bindgen_0154ffe4816a41e4 :: + 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:1390: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_0154ffe4816a41e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_27eded66d1132657" hs_bindgen_27eded66d1132657 :: + 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:1392: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_27eded66d1132657 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_2095005e863750a3" hs_bindgen_2095005e863750a3 :: + 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:1398: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_2095005e863750a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_9b5fda28648b901c" hs_bindgen_9b5fda28648b901c :: + 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:1401: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_9b5fda28648b901c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_9f5afae194926678" hs_bindgen_9f5afae194926678 :: + 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:1404: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_9f5afae194926678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_f2cf1f925f3d2c14" hs_bindgen_f2cf1f925f3d2c14 :: + 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:1407: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_f2cf1f925f3d2c14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_1b33a32218111900" hs_bindgen_1b33a32218111900 :: + 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:1409: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_1b33a32218111900 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_1e0690d082726626" hs_bindgen_1e0690d082726626 :: + 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:1411: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_1e0690d082726626 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_527f46303ee6ba73" hs_bindgen_527f46303ee6ba73 :: + 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:1413: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_527f46303ee6ba73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_f4b7956c36fb23b9" hs_bindgen_f4b7956c36fb23b9 :: + 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:1428: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_f4b7956c36fb23b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_e4166c8f369f5f8c" hs_bindgen_e4166c8f369f5f8c :: + 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:1442: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_e4166c8f369f5f8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_e2ff7575f9665af8" hs_bindgen_e2ff7575f9665af8 :: + 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:1460: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_e2ff7575f9665af8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_6294b8fcb040529e" hs_bindgen_6294b8fcb040529e :: + 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:1475: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_6294b8fcb040529e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_94d039df8b85d60a" hs_bindgen_94d039df8b85d60a :: + 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:1481: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_94d039df8b85d60a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_56c1a182f5431f16" hs_bindgen_56c1a182f5431f16 :: + 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:1483: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_56c1a182f5431f16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_89f961670a8a832f" hs_bindgen_89f961670a8a832f :: + 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:1485: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_89f961670a8a832f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_384b29b043204399" hs_bindgen_384b29b043204399 :: + 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:1487: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_384b29b043204399 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_5d784b491ba53335" hs_bindgen_5d784b491ba53335 :: + 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:1493: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_5d784b491ba53335 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_ac15394a013564af" hs_bindgen_ac15394a013564af :: + 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:1495: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_ac15394a013564af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_343e3a5d47e596e0" hs_bindgen_343e3a5d47e596e0 :: + 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:1497: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_343e3a5d47e596e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_d7f0fbf95e1dd0e0" hs_bindgen_d7f0fbf95e1dd0e0 :: + 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:1499: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_d7f0fbf95e1dd0e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_bb1bc64d79d10009" hs_bindgen_bb1bc64d79d10009 :: + 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:1505: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_bb1bc64d79d10009 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_98e33d65870d0133" hs_bindgen_98e33d65870d0133 :: + 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:1507: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_98e33d65870d0133 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_57a4191125cbf032" hs_bindgen_57a4191125cbf032 :: + 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:1509: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_57a4191125cbf032 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_698cb22f9948c09f" hs_bindgen_698cb22f9948c09f :: + 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:1511: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_698cb22f9948c09f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_4eefada85240799f" hs_bindgen_4eefada85240799f :: + 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:1517: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_4eefada85240799f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_682e57a7b0e3ed94" hs_bindgen_682e57a7b0e3ed94 :: + 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:1519: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_682e57a7b0e3ed94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_560bb5f1dcd8f4c0" hs_bindgen_560bb5f1dcd8f4c0 :: + 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:1521: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_560bb5f1dcd8f4c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_0be1d2ff1f0bc054" hs_bindgen_0be1d2ff1f0bc054 :: + 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:1523: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_0be1d2ff1f0bc054 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_dc495c82cc7d2668" hs_bindgen_dc495c82cc7d2668 :: + 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:1530: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_dc495c82cc7d2668 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_1fd931424d599480" hs_bindgen_1fd931424d599480 :: + 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:1533: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_1fd931424d599480 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_e96f9c1356e4836d" hs_bindgen_e96f9c1356e4836d :: + 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:1539: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_e96f9c1356e4836d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_2dfaafcf443aa706" hs_bindgen_2dfaafcf443aa706 :: + 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:1541: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_2dfaafcf443aa706 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_c029892fcabcbf2c" hs_bindgen_c029892fcabcbf2c :: + 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:1545: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_c029892fcabcbf2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_f159028bf6595756" hs_bindgen_f159028bf6595756 :: + 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:1549: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_f159028bf6595756 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_7b2a2521650761e5" hs_bindgen_7b2a2521650761e5 :: + 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:1556: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_7b2a2521650761e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_16de074972e3d1e9" hs_bindgen_16de074972e3d1e9 :: + 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:1559: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_16de074972e3d1e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_f169e174a4524a6a" hs_bindgen_f169e174a4524a6a :: + 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:1566: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_f169e174a4524a6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_2fda31c950868ada" hs_bindgen_2fda31c950868ada :: + 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:1572: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_2fda31c950868ada + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_a18e4aa3837d7aba" hs_bindgen_a18e4aa3837d7aba :: + 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:1582: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_a18e4aa3837d7aba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_0c7edab9e7a76219" hs_bindgen_0c7edab9e7a76219 :: + 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:1585: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_0c7edab9e7a76219 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_88c14094e6df82ce" hs_bindgen_88c14094e6df82ce :: + 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:1592: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_88c14094e6df82ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_d91bb78531f05a0e" hs_bindgen_d91bb78531f05a0e :: + 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:1595: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_d91bb78531f05a0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_b84531ce9f94b90d" hs_bindgen_b84531ce9f94b90d :: + 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:1601: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_b84531ce9f94b90d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_f4b1d1ff9e11c4ba" hs_bindgen_f4b1d1ff9e11c4ba :: + 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:1604: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_f4b1d1ff9e11c4ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_9af2c9c79b21ec89" hs_bindgen_9af2c9c79b21ec89 :: + 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:1607: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_9af2c9c79b21ec89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_7d79b72e5ae13937" hs_bindgen_7d79b72e5ae13937 :: + 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:1610: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_7d79b72e5ae13937 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_7733bbe7c222560b" hs_bindgen_7733bbe7c222560b :: + 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:1613: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_7733bbe7c222560b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_adc78fd6243df0f8" hs_bindgen_adc78fd6243df0f8 :: + 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:1616: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_adc78fd6243df0f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_e7a0bdb313d5d116" hs_bindgen_e7a0bdb313d5d116 :: + 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:1619: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_e7a0bdb313d5d116 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_d7ced1bb440f7030" hs_bindgen_d7ced1bb440f7030 :: + 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:1623: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_d7ced1bb440f7030 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_a808198dcad4b6d1" hs_bindgen_a808198dcad4b6d1 :: + 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:1627: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_a808198dcad4b6d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_6ea6a8bea7a95027" hs_bindgen_6ea6a8bea7a95027 :: + 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:1630: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_6ea6a8bea7a95027 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_154873b9612c1450" hs_bindgen_154873b9612c1450 :: + 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:1637: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_154873b9612c1450 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_7b7535be43f3caf3" hs_bindgen_7b7535be43f3caf3 :: + 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:1645: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_7b7535be43f3caf3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_bc67d01cc2369722" hs_bindgen_bc67d01cc2369722 :: + 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:1650: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_bc67d01cc2369722 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_09015e9d73034a03" hs_bindgen_09015e9d73034a03 :: + 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:1653: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_09015e9d73034a03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_891d8230b9c88593" hs_bindgen_891d8230b9c88593 :: + 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:1656: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_891d8230b9c88593 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_69bbba0c9c9ef152" hs_bindgen_69bbba0c9c9ef152 :: + 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:1669: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_69bbba0c9c9ef152 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_3854256ecf4b1904" hs_bindgen_3854256ecf4b1904 :: + 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:1674: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_3854256ecf4b1904 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_cca30e9749fbb689" hs_bindgen_cca30e9749fbb689 :: + 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:1677: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_cca30e9749fbb689 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_ccd8301a2cd002fc" hs_bindgen_ccd8301a2cd002fc :: + 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:1680: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_ccd8301a2cd002fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_19ca09688b04093d" hs_bindgen_19ca09688b04093d :: + 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:1692: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_19ca09688b04093d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_1b2c147f82aa1e0c" hs_bindgen_1b2c147f82aa1e0c :: + 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:1697: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_1b2c147f82aa1e0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_179124cd34f2caef" hs_bindgen_179124cd34f2caef :: + 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:1699: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_179124cd34f2caef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_d72a2e8bfcdfdcf6" hs_bindgen_d72a2e8bfcdfdcf6 :: + 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:1701: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_d72a2e8bfcdfdcf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_4891c61f2ae4377c" hs_bindgen_4891c61f2ae4377c :: + 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:1704: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_4891c61f2ae4377c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_edd1c92d6832781a" hs_bindgen_edd1c92d6832781a :: + 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:1712: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_edd1c92d6832781a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_8382065547a7fd13" hs_bindgen_8382065547a7fd13 :: + 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:1720: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_8382065547a7fd13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_6abcd97f362ccc25" hs_bindgen_6abcd97f362ccc25 :: + 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:1722: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_6abcd97f362ccc25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_079f14c4260a4d59" hs_bindgen_079f14c4260a4d59 :: + 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:1723: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_079f14c4260a4d59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_8379d404ffa3bc27" hs_bindgen_8379d404ffa3bc27 :: + 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:1731: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_8379d404ffa3bc27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_1e427a0b777e554f" hs_bindgen_1e427a0b777e554f :: + 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:1736: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_1e427a0b777e554f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_34e3a74c46951e8c" hs_bindgen_34e3a74c46951e8c :: + 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:1738: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_34e3a74c46951e8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_a7070ee7ae669a68" hs_bindgen_a7070ee7ae669a68 :: + 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:1741: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_a7070ee7ae669a68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_2caac9190a784c46" hs_bindgen_2caac9190a784c46 :: + 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:1743: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_2caac9190a784c46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_942fdbbbcce65d37" hs_bindgen_942fdbbbcce65d37 :: + 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:1746: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_942fdbbbcce65d37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_cb460c320d247d19" hs_bindgen_cb460c320d247d19 :: + 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:1760: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_cb460c320d247d19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ab1e411c4252516f" hs_bindgen_ab1e411c4252516f :: + 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:1765: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_ab1e411c4252516f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_aaebf974d7802331" hs_bindgen_aaebf974d7802331 :: + 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:1768: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_aaebf974d7802331 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_a82a4fd8911f3eb2" hs_bindgen_a82a4fd8911f3eb2 :: + 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:1773: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_a82a4fd8911f3eb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_15989465de02840f" hs_bindgen_15989465de02840f :: + 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:1777: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_15989465de02840f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_1ea8122db9e41a5e" hs_bindgen_1ea8122db9e41a5e :: + 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:1790: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_1ea8122db9e41a5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_c4fe35ab0741e417" hs_bindgen_c4fe35ab0741e417 :: + 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:1795: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_c4fe35ab0741e417 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_0c2bc3b71d663765" hs_bindgen_0c2bc3b71d663765 :: + 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:1798: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_0c2bc3b71d663765 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_50bdfd21653a07de" hs_bindgen_50bdfd21653a07de :: + 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:1803: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_50bdfd21653a07de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_991c2a5aa04072f3" hs_bindgen_991c2a5aa04072f3 :: + 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:1816: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_991c2a5aa04072f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_875dd6b5e58ccfbd" hs_bindgen_875dd6b5e58ccfbd :: + 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:1823: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_875dd6b5e58ccfbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_2e4e071c9e609010" hs_bindgen_2e4e071c9e609010 :: + 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:1838: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_2e4e071c9e609010 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_c40230255a6c2fb1" hs_bindgen_c40230255a6c2fb1 :: + 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:1853: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_c40230255a6c2fb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_dcea500f1b637afa" hs_bindgen_dcea500f1b637afa :: + 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:1854: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_dcea500f1b637afa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_5ec72fbff9db7bcb" hs_bindgen_5ec72fbff9db7bcb :: + 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:1859: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_5ec72fbff9db7bcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_836b57e392acb243" hs_bindgen_836b57e392acb243 :: + 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:1861: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_836b57e392acb243 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_5e70c36de6959fa0" hs_bindgen_5e70c36de6959fa0 :: + 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:1864: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_5e70c36de6959fa0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_2ac91c1f748f21e2" hs_bindgen_2ac91c1f748f21e2 :: + 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:1865: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_2ac91c1f748f21e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_283af006cc6a95dc" hs_bindgen_283af006cc6a95dc :: + 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:1867: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_283af006cc6a95dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_14e674d95a12af16" hs_bindgen_14e674d95a12af16 :: + 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:1868: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_14e674d95a12af16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_9793357a7ac2b97b" hs_bindgen_9793357a7ac2b97b :: + 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:1871: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_9793357a7ac2b97b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_e7881a188219b48f" hs_bindgen_e7881a188219b48f :: + 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:1873: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_e7881a188219b48f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_079f1e82294ddd85" hs_bindgen_079f1e82294ddd85 :: + 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:1874: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_079f1e82294ddd85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_98855c72700b1ac6" hs_bindgen_98855c72700b1ac6 :: + 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:1875: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_98855c72700b1ac6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_7a012842bcc0786f" hs_bindgen_7a012842bcc0786f :: + 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:1877: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_7a012842bcc0786f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_4e81440549fa5918" hs_bindgen_4e81440549fa5918 :: + 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:1880: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_4e81440549fa5918 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_f4dad6c417832ca7" hs_bindgen_f4dad6c417832ca7 :: + 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:1882: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_f4dad6c417832ca7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_09b0a700f979a546" hs_bindgen_09b0a700f979a546 :: + 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:1885: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_09b0a700f979a546 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_7eebb7d6b9751fa2" hs_bindgen_7eebb7d6b9751fa2 :: + 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:1889: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_7eebb7d6b9751fa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_cd96f83565d22474" hs_bindgen_cd96f83565d22474 :: + 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:1892: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_cd96f83565d22474 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_5b6d951fda5221b1" hs_bindgen_5b6d951fda5221b1 :: + 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:1895: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_5b6d951fda5221b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_58b00d3b3da19559" hs_bindgen_58b00d3b3da19559 :: + 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:1911: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_58b00d3b3da19559 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_41c89978a80942f3" hs_bindgen_41c89978a80942f3 :: + 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:1917: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_41c89978a80942f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_ab3905746b03830f" hs_bindgen_ab3905746b03830f :: + 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:1928: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_ab3905746b03830f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_286d57ddefc5c8d4" hs_bindgen_286d57ddefc5c8d4 :: + 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:1943: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_286d57ddefc5c8d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_6160f2d71a07535d" hs_bindgen_6160f2d71a07535d :: + 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:1951: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_6160f2d71a07535d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_4c67b7e3bf904560" hs_bindgen_4c67b7e3bf904560 :: + 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:1953: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_4c67b7e3bf904560 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_641d82112f587714" hs_bindgen_641d82112f587714 :: + 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:1955: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_641d82112f587714 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_cd091e493a3fa821" hs_bindgen_cd091e493a3fa821 :: + 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:1961: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_cd091e493a3fa821 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_49b4ea6446345b0c" hs_bindgen_49b4ea6446345b0c :: + 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:1968: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_49b4ea6446345b0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_f8adf15de4b7b619" hs_bindgen_f8adf15de4b7b619 :: + 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:1986: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_f8adf15de4b7b619 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_37f4027272315c88" hs_bindgen_37f4027272315c88 :: + 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:1995: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_37f4027272315c88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_a9706d6681220cc0" hs_bindgen_a9706d6681220cc0 :: + 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:2003: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_a9706d6681220cc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_98c03d27e19dfb13" hs_bindgen_98c03d27e19dfb13 :: + 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:2013: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_98c03d27e19dfb13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_65935d52e44c7642" hs_bindgen_65935d52e44c7642 :: + 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:2032: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_65935d52e44c7642 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_4336be4b5656a401" hs_bindgen_4336be4b5656a401 :: + 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:2039: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_4336be4b5656a401 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_4de6cc1f949c1c2c" hs_bindgen_4de6cc1f949c1c2c :: + 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:2045: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_4de6cc1f949c1c2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_8e055b0a9ef0dcd3" hs_bindgen_8e055b0a9ef0dcd3 :: + 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:2051: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_8e055b0a9ef0dcd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_e2f18f66f9d3ca00" hs_bindgen_e2f18f66f9d3ca00 :: + 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:2064: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_e2f18f66f9d3ca00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_52349942367a7806" hs_bindgen_52349942367a7806 :: + 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:2072: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_52349942367a7806 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_3ce18d97bd87429d" hs_bindgen_3ce18d97bd87429d :: + 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:2081: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_3ce18d97bd87429d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_a3bc1b5c05256eae" hs_bindgen_a3bc1b5c05256eae :: + 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:2092: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_a3bc1b5c05256eae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_9afbdf4016ccbe79" hs_bindgen_9afbdf4016ccbe79 :: + 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:2103: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_9afbdf4016ccbe79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_c9bb8676728b1e35" hs_bindgen_c9bb8676728b1e35 :: + 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:2110: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_c9bb8676728b1e35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_8f8f15385ee19724" hs_bindgen_8f8f15385ee19724 :: + 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:2113: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_8f8f15385ee19724 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_c391461a02973c26" hs_bindgen_c391461a02973c26 :: + 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:2116: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_c391461a02973c26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_aff31a463ad37141" hs_bindgen_aff31a463ad37141 :: + 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:2128: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_aff31a463ad37141 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_859232d7eef63113" hs_bindgen_859232d7eef63113 :: + 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:2136: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_859232d7eef63113 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_a96f900c15c9db63" hs_bindgen_a96f900c15c9db63 :: + 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:2151: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_a96f900c15c9db63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_6f600fdb3ca256ba" hs_bindgen_6f600fdb3ca256ba :: + 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:2170: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_6f600fdb3ca256ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_a1b869d98bbac558" hs_bindgen_a1b869d98bbac558 :: + 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:2186: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_a1b869d98bbac558 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_c47a7f9338428aa2" hs_bindgen_c47a7f9338428aa2 :: + 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:2213: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_c47a7f9338428aa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_a9023e2f0657191d" hs_bindgen_a9023e2f0657191d :: + 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:2231: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_a9023e2f0657191d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_5b971190e997a0f5" hs_bindgen_5b971190e997a0f5 :: + 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:2252: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_5b971190e997a0f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_b345ef4ded5fc464" hs_bindgen_b345ef4ded5fc464 :: + 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:2273: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_b345ef4ded5fc464 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_678cf53c2202b765" hs_bindgen_678cf53c2202b765 :: + 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:2298: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_678cf53c2202b765 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_ce8481d90b5f1f3f" hs_bindgen_ce8481d90b5f1f3f :: + 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:2306: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_ce8481d90b5f1f3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_7bf6f365508aa91e" hs_bindgen_7bf6f365508aa91e :: + 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:2316: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_7bf6f365508aa91e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_7898d010b5bc40a6" hs_bindgen_7898d010b5bc40a6 :: + 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:2327: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_7898d010b5bc40a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_6dd9bf81730bbd39" hs_bindgen_6dd9bf81730bbd39 :: + 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:2339: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_6dd9bf81730bbd39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_8a3a4750c4824f47" hs_bindgen_8a3a4750c4824f47 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2346: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_8a3a4750c4824f47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_108f4b80e9a03011" hs_bindgen_108f4b80e9a03011 :: + 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:2360: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_108f4b80e9a03011 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_f7078462265233af" hs_bindgen_f7078462265233af :: + IO (Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_crypto_backend_state_destroy #-} + +{-| Frees all resouces 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:2372: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_f7078462265233af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_23c8610e16da9cb5" hs_bindgen_23c8610e16da9cb5 :: + 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:2383: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_23c8610e16da9cb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_9c0e87485fb40a10" hs_bindgen_9c0e87485fb40a10 :: + 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:2395: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_9c0e87485fb40a10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_0d41f9557674c560" hs_bindgen_0d41f9557674c560 :: + 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:2402: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_0d41f9557674c560 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/Safe.hs new file mode 100644 index 00000000..8269eece --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/Safe.hs @@ -0,0 +1,13730 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_7_1.Safe where + +import Botan.Bindings.Generated.Botan_3_7_1 +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_6485de636b35d57d (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_d1554ad31227c9e4 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_d1f078b8975120b0 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_adbc2ba41a9c7651 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_34f0e758d3d8eced (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_70ce79a1fd29ec9d (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_237a5f1600ead5c1 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_1b74ebf3f92fa001 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_e7d0c5385682c381 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_fed3090ea56ac2e4 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b87fe3315b1a750d (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9da788f8bf4ff559 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_998510941886e83a (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1631ade4e1715e71 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ae46fedf0e9b40be (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_15560b6d94cd98fa (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_02b9aa8de8f5fafc (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_564215a7ee87c453 (" + , " 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_de0c0a1de811196b (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0a0149f005341f9a (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_966080eb9b6f17e2 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_617567dcb0f02a86 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fe3916a067b3d867 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9c5c271c3fa154a1 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d87422614bc6ae95 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2b2bbbd51bf39a9d (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e4cd1379068b0e0 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79009c97c11a4ba7 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_62b8cf2c7a95bb7a (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6e5cd79e4433d9f4 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c2645274b1428d92 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_3d131eb1495557eb (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_61faf616e6b60dc5 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ffa88124db899543 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c0f76d0a4d439f25 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bd68509932d29e37 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_903903fdd64622ca (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_80602efb4adc6b73 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_33975bcc7cd29054 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8d3f1611f9575b22 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_b6473bceef9b3273 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bba67b1389669410 (" + , " 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_e3cae404a91a3ad4 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0190578defc54e6b (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a843367147b12108 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_48948b87fbab30a0 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_129c7592b4435456 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e96d888c64d82dfd (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8d653797bce8470 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_73a40ece719a4837 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_7a4c98d0ec64b53c (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f079063a397a363b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ba45c9c2cedeae2e (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f085f03eb54ffd12 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0af43c85842ae498 (" + , " 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_320af21586ff8ed5 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f2e78bac05c52f6a (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_acf046c23505d51a (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_06bea6dfb9cc9d26 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7c658201b18621dd (" + , " 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_3ef979f12b1d3a77 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_7ae835a1b2b3b1e0 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_817462f891b46fda (" + , " 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_c02c713be10b2511 (" + , " 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_29b9b78ff0f529a5 (" + , " 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_a69463761d22ebf2 (" + , " 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_a1c20e5863312951 (" + , " 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_d0945a8587a89bf3 (" + , " 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_ce3126f525424941 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c21ee0a05fc7d24b (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dda71815562139ef (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_a8debb22208d6326 (" + , " 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_9688a65736a050d7 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_e3ea62569da424b4 (" + , " 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_7e7dd3aa10e7f5cc (" + , " 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_2d99424b4d7890bb (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_818eebf58250de8f (" + , " 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_04d76e3582027a06 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_8622c2a35486066b (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_12d94d0af6fb5c64 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c4cb6e4fd1de1e11 (" + , " 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_c357a73390d81fd2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_28f3e64c791b0783 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_316f783b3897e6e1 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c49300e3e05af4e1 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9e0d5e16da64ea61 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ecaddfa68c204562 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78bdb8da22358a42 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_084584deba473586 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6fb768020f40b8a (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0d3efe11255e252e (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_21e5cce6d7ef93a3 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_75d50aea1197adf2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_f8f107cb859eaf63 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_7611f0c05d229220 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_8014f7ad062c053f (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_9c069ad7082bd528 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_01bff53480eb76fd (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0dbc78a506e43393 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_166de76ad65a25d9 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aacdc39da9d96f1a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3a270a1b3e65ddc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e9bd22d935b851a (" + , " 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_ef11e947653bd06a (" + , " 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_4150303332711a74 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c50bd2178151fb2c (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8b5656f1c65f10ae (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0da360f7c08ed536 (" + , " 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_e0eb0b7ca72628c3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_261b5b0f25099b3f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3acacf4bcbc4a058 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6e0991c79744e13 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ccd73a0d477acb65 (" + , " 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_95ab5357dcf2a568 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_14b566696b83ec57 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_441983a98f8fa906 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ed59e6e7cd584452 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ed5165e4c7d96c0 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ec7a9de530fc6bb8 (" + , " 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_e33dbc80b39cb945 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a177c4cf301c7508 (" + , " 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_1c804f8048032e4b (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_67968a8ef1885623 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5fb2c3a02da50b32 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6f557da1be63ce83 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_34b9898e61f81edf (" + , " 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_3a8a7d338e388a9b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_28080b656fcf7c46 (" + , " 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_898ee6210a33e487 (" + , " 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_f4bf1007c2828bfe (" + , " 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_49d4a5a7b9908d87 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fc46d62033ecffef (" + , " 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_1e18c621988e7fce (" + , " 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_4f142912018cbd7d (" + , " 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_775d1bc8982d9c2e (" + , " 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_5e809ca8668eadbf (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c485db0648e82c91 (" + , " 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_d53121097e938a5c (" + , " 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_b029d39aa7db9580 (" + , " 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_88211ce304236d27 (" + , " 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_cf85299c3380a898 (" + , " 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_b701b6a2f38822bd (" + , " 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_bb43be862b8983ab (" + , " 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_6bb087466ed93ced (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0dd2f1e80b183664 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e8da648f0de7e086 (" + , " 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_1ce1a2d97b88df80 (" + , " 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_ccfa879cb361ac39 (" + , " 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_cc0f2128766a74fc (" + , " 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_ebaba2c321687758 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_647e40dfe2a41736 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e59a0ee191bc095e (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0f127ebaa4614fc (" + , " 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_7d01082fb2b0efd2 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1f0b4fdcea4c00ee (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0d2c1ca25e5c9c52 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d23fd0db9bd55876 (" + , " 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_7370fc39f7319c7b (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eaa113d5058e7875 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9025ea9811c9a0bf (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_47f066e1e7066e5f (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_651b496a3b79a728 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0555d2f2e79e99b7 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_07b913aa0f697237 (" + , " 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_a97fc5d0af362605 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e0fb2a6cb1a33e86 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ffc690dbceae568 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7465f5c3b408eabb (" + , " 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_4da0c3bf02b94e30 (" + , " 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_a4cb47d93c281147 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18e16e53d94231a4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73024a1522e2c21d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_325ca2032c7c446c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e86aeb24a07c5e49 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0432e14742502296 (" + , " 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_b9e391f4420e2f4f (" + , " 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_2cb54f5c79fdd180 (" + , " 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_77e60df832738c5d (" + , " 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_a86c490696760796 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0f293cd6ba8637ea (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1c5409cd16a8e023 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_704aa905fb566f19 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e5b6e33429ca16d5 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2f6704bc73753ad (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c4910ca787101e95 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c952e2f08320a1f9 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7c63a07392dfb7f3 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3faf374b12fcaad3 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d8b18528c8e45643 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_408496b105086114 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e6a7148306836ff5 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_035b278667e258dd (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7986a09630a51d75 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa01510cc4a23cca (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4115eba3e67779f3 (" + , " 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_bd7f6372714ab775 (" + , " 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_fade3c272af01495 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1de2fab606bb16bc (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_95d7e0e717d71923 (" + , " 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_6e6191da6493acca (" + , " 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_25bf616e0533ca17 (" + , " 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_06faa62a17492f41 (" + , " 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_586fc4fe5088f8c1 (" + , " 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_eff2e44f4aa4d7d8 (" + , " 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_92864dcb36ea32b2 (" + , " 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_fe7c047c55799f01 (" + , " 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_37d92949c42b9080 (" + , " 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_1d1c69d84b30a7e3 (" + , " 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_94b46eac1e50d966 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_cf37758e754d25ad (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b9e1b8240292618b (" + , " 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_24d2d496620478ba (" + , " 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_b1b6f7c97100853e (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7638a759e05dd573 (" + , " 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_daf79e3cb00ea0fb (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e421dbe5a60bd421 (" + , " 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_6e680d1935475404 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_64d124afafc15fb3 (" + , " 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_7b857d543169eaa2 (" + , " 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_57d8c0709962fa37 (" + , " 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_96e2c854fa408252 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9ea334227458f653 (" + , " 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_cf708a0943cd7599 (" + , " 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_638043d73aced221 (" + , " 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_7c3376d261823349 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9ed3f37844c0e50c (" + , " 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_6cec06e2ad3c3030 (" + , " 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_67a6368c77d3238d (" + , " 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_c87ccc2d11f9dd31 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4ba0e73d8418142f (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1527f0fad241d17 (" + , " 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_c04d30409e2b7b58 (" + , " 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_302c5b5ad8875643 (" + , " 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_795a55a2e7e853fc (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_586fdc3ef6f9640f (" + , " 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_ffbe2e141fbc4394 (" + , " 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_677ae72421625684 (" + , " 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_4dcf7c915fb44c28 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_45f9879f5a5dd6a9 (" + , " 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_2a5eed5ca80144cb (" + , " 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_5b542f73dde72104 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3644a81792e9e005 (" + , " 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_7eb78c279ee96cff (" + , " 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_f315c33334528774 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3be2e30c440a6f6b (" + , " 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_fa228dd12d2982ce (" + , " 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_99a364ab955b17d3 (" + , " 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_12fc8b239d71480f (" + , " 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_e765470023b314f7 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e3a12bc47d38c11d (" + , " 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_dd8e0fd746618c1d (" + , " 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_3c6575da6b6fdf43 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d12e495100286b2 (" + , " 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_37ab5b0b419c8f36 (" + , " 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_ba52172f00ce4f4f (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_614b7b17312d0c3f (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_88279437b976d76b (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a71044d452dd5ce0 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0312574601550d3e (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a02301687019365 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4aa7ef416421d137 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_af678f108d5660a3 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e927192de95dca5 (" + , " 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_12e57789e19eafb7 (" + , " 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_4c1246b7298d694b (" + , " 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_14478ca891b1385a (" + , " 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_d8c1bbd66bf60691 (" + , " 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_edd5a4a3fc4672aa (" + , " 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_f5b61e47b4a24b3b (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_59bdd3907a913242 (" + , " 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_d13e4430d76d88fa (" + , " 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_c4bcf6a309d353c6 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2bd1631e328b0b25 (" + , " 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_705986660f39f167 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a25b2d384c725fb (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_65e6a1612cc8a319 (" + , " 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_ab5eb5b11cba35bc (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_0b499e8c6cdc326e (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f1fc7c1bf04385a (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e0401812442b57db (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a3d556a3d582f193 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d3e632d7fbe926b (" + , " 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_e894838393bbea02 (" + , " 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_d1679d52b3ab0c62 (" + , " 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_1229b7f7117900f3 (" + , " 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_8bfca139ed7f5644 (" + , " 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_e80ee12857cf1e2c (" + , " 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_3d6909b9bf268f67 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_43af747575c68bc4 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_694de16cb38fcd9f (" + , " 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_2f83ee7f2f5947a9 (" + , " 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_bc47d2413136e07f (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ad0fc2f326792f43 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ca841a341325b33f (" + , " 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_22c90d0da760b7a2 (" + , " 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_163c0a57682c98f6 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_99e8a7d8c8c6e55b (" + , " 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_17cd0026772ebd05 (" + , " 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_89e002673ff92d5d (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_9878ba818571c881 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0f7bed056d50745b (" + , " 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_c619be7676cec17d (" + , " 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_14e69a040cfacb11 (" + , " 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_fbda96748b1c7873 (" + , " 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_7713c0cc1e00a969 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8d52c9501b40b54c (" + , " 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_7da819b9caa6c3f9 (" + , " 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_2a120ed92819e873 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_614222afde3a45ae (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9df279ee33723134 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0052e24cbdc84f3f (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d95d17ee09b70af (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_381e563f9950b23c (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d9c18c2ba0b672cc (" + , " 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_1223037305c9bbb7 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_53ca5185237ee93f (" + , " 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_9ec5dbb51b7c4870 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b01a712b26f878e0 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_6485de636b35d57d" hs_bindgen_6485de636b35d57d :: + 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:170: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_6485de636b35d57d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_d1554ad31227c9e4" hs_bindgen_d1554ad31227c9e4 :: + 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:179: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_d1554ad31227c9e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_d1f078b8975120b0" hs_bindgen_d1f078b8975120b0 :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_d1f078b8975120b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_adbc2ba41a9c7651" hs_bindgen_adbc2ba41a9c7651 :: + 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:192: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_adbc2ba41a9c7651 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_34f0e758d3d8eced" hs_bindgen_34f0e758d3d8eced :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_34f0e758d3d8eced + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_70ce79a1fd29ec9d" hs_bindgen_70ce79a1fd29ec9d :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_70ce79a1fd29ec9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_237a5f1600ead5c1" hs_bindgen_237a5f1600ead5c1 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_237a5f1600ead5c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_1b74ebf3f92fa001" hs_bindgen_1b74ebf3f92fa001 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_1b74ebf3f92fa001 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_e7d0c5385682c381" hs_bindgen_e7d0c5385682c381 :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_e7d0c5385682c381 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_fed3090ea56ac2e4" hs_bindgen_fed3090ea56ac2e4 :: + 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:223: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_fed3090ea56ac2e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_b87fe3315b1a750d" hs_bindgen_b87fe3315b1a750d :: + 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:229: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_b87fe3315b1a750d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_9da788f8bf4ff559" hs_bindgen_9da788f8bf4ff559 :: + 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:235: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_9da788f8bf4ff559 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_998510941886e83a" hs_bindgen_998510941886e83a :: + 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:247: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_998510941886e83a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_1631ade4e1715e71" hs_bindgen_1631ade4e1715e71 :: + 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:257: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_1631ade4e1715e71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_ae46fedf0e9b40be" hs_bindgen_ae46fedf0e9b40be :: + 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:262:28@ + +__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_ae46fedf0e9b40be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_15560b6d94cd98fa" hs_bindgen_15560b6d94cd98fa :: + 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:267: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_15560b6d94cd98fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_02b9aa8de8f5fafc" hs_bindgen_02b9aa8de8f5fafc :: + 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:286: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_02b9aa8de8f5fafc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_564215a7ee87c453" hs_bindgen_564215a7ee87c453 :: + 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:298: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_564215a7ee87c453 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_de0c0a1de811196b" hs_bindgen_de0c0a1de811196b :: + 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:312: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_de0c0a1de811196b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_0a0149f005341f9a" hs_bindgen_0a0149f005341f9a :: + 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:320: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_0a0149f005341f9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_966080eb9b6f17e2" hs_bindgen_966080eb9b6f17e2 :: + 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:330: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_966080eb9b6f17e2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_617567dcb0f02a86" hs_bindgen_617567dcb0f02a86 :: + 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:340: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_617567dcb0f02a86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_fe3916a067b3d867" hs_bindgen_fe3916a067b3d867 :: + 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:350: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_fe3916a067b3d867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_9c5c271c3fa154a1" hs_bindgen_9c5c271c3fa154a1 :: + 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:357: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_9c5c271c3fa154a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_d87422614bc6ae95" hs_bindgen_d87422614bc6ae95 :: + 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:371: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_d87422614bc6ae95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_2b2bbbd51bf39a9d" hs_bindgen_2b2bbbd51bf39a9d :: + 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:379: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_2b2bbbd51bf39a9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_4e4cd1379068b0e0" hs_bindgen_4e4cd1379068b0e0 :: + 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:387: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_4e4cd1379068b0e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_79009c97c11a4ba7" hs_bindgen_79009c97c11a4ba7 :: + 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:395: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_79009c97c11a4ba7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_62b8cf2c7a95bb7a" hs_bindgen_62b8cf2c7a95bb7a :: + 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:404: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_62b8cf2c7a95bb7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_6e5cd79e4433d9f4" hs_bindgen_6e5cd79e4433d9f4 :: + 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:414: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_6e5cd79e4433d9f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_c2645274b1428d92" hs_bindgen_c2645274b1428d92 :: + 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:422: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_c2645274b1428d92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_3d131eb1495557eb" hs_bindgen_3d131eb1495557eb :: + 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:429: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_3d131eb1495557eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_61faf616e6b60dc5" hs_bindgen_61faf616e6b60dc5 :: + 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:437: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_61faf616e6b60dc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_ffa88124db899543" hs_bindgen_ffa88124db899543 :: + 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:452: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_ffa88124db899543 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_c0f76d0a4d439f25" hs_bindgen_c0f76d0a4d439f25 :: + 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:460: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_c0f76d0a4d439f25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_bd68509932d29e37" hs_bindgen_bd68509932d29e37 :: + 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:469: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_bd68509932d29e37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_903903fdd64622ca" hs_bindgen_903903fdd64622ca :: + 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:478: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_903903fdd64622ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_80602efb4adc6b73" hs_bindgen_80602efb4adc6b73 :: + 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:487: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_80602efb4adc6b73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_33975bcc7cd29054" hs_bindgen_33975bcc7cd29054 :: + 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:497: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_33975bcc7cd29054 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_8d3f1611f9575b22" hs_bindgen_8d3f1611f9575b22 :: + 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:505: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_8d3f1611f9575b22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_b6473bceef9b3273" hs_bindgen_b6473bceef9b3273 :: + 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:513: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_b6473bceef9b3273 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_bba67b1389669410" hs_bindgen_bba67b1389669410 :: + 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:523: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_bba67b1389669410 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_e3cae404a91a3ad4" hs_bindgen_e3cae404a91a3ad4 :: + 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:533: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_e3cae404a91a3ad4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_0190578defc54e6b" hs_bindgen_0190578defc54e6b :: + 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:547: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_0190578defc54e6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_a843367147b12108" hs_bindgen_a843367147b12108 :: + 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:552: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_a843367147b12108 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_48948b87fbab30a0" hs_bindgen_48948b87fbab30a0 :: + 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:557: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_48948b87fbab30a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_129c7592b4435456" hs_bindgen_129c7592b4435456 :: + 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:562: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_129c7592b4435456 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_e96d888c64d82dfd" hs_bindgen_e96d888c64d82dfd :: + 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:567: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_e96d888c64d82dfd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_c8d653797bce8470" hs_bindgen_c8d653797bce8470 :: + 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:572: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_c8d653797bce8470 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_73a40ece719a4837" hs_bindgen_73a40ece719a4837 :: + 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:579: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_73a40ece719a4837 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_7a4c98d0ec64b53c" hs_bindgen_7a4c98d0ec64b53c :: + 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:584: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_7a4c98d0ec64b53c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_f079063a397a363b" hs_bindgen_f079063a397a363b :: + 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:590: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_f079063a397a363b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_ba45c9c2cedeae2e" hs_bindgen_ba45c9c2cedeae2e :: + 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:596: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_ba45c9c2cedeae2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_f085f03eb54ffd12" hs_bindgen_f085f03eb54ffd12 :: + 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:602:5@ + +__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_f085f03eb54ffd12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_0af43c85842ae498" hs_bindgen_0af43c85842ae498 :: + 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:608:5@ + +__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_0af43c85842ae498 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_320af21586ff8ed5" hs_bindgen_320af21586ff8ed5 :: + 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:613: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_320af21586ff8ed5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_f2e78bac05c52f6a" hs_bindgen_f2e78bac05c52f6a :: + 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:623:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_f2e78bac05c52f6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_acf046c23505d51a" hs_bindgen_acf046c23505d51a :: + 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:628: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_acf046c23505d51a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_06bea6dfb9cc9d26" hs_bindgen_06bea6dfb9cc9d26 :: + 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:633: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_06bea6dfb9cc9d26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_7c658201b18621dd" hs_bindgen_7c658201b18621dd :: + 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_7c658201b18621dd + +{-| + + 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:660: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_7c658201b18621dd x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_3ef979f12b1d3a77" hs_bindgen_3ef979f12b1d3a77 :: + 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:672:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_3ef979f12b1d3a77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_7ae835a1b2b3b1e0" hs_bindgen_7ae835a1b2b3b1e0 :: + 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:678:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_7ae835a1b2b3b1e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_817462f891b46fda" hs_bindgen_817462f891b46fda :: + 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_817462f891b46fda + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:697: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_817462f891b46fda x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_c02c713be10b2511" hs_bindgen_c02c713be10b2511 :: + 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_c02c713be10b2511 + +{-| 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:730: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_c02c713be10b2511 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_29b9b78ff0f529a5" hs_bindgen_29b9b78ff0f529a5 :: + 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_29b9b78ff0f529a5 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:754: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_29b9b78ff0f529a5 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_a69463761d22ebf2" hs_bindgen_a69463761d22ebf2 :: + 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_a69463761d22ebf2 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:781: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_a69463761d22ebf2 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_a1c20e5863312951" hs_bindgen_a1c20e5863312951 :: + 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_a1c20e5863312951 + +{-| 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:800: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_a1c20e5863312951 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_d0945a8587a89bf3" hs_bindgen_d0945a8587a89bf3 :: + 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_d0945a8587a89bf3 + +{-| 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:823: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_d0945a8587a89bf3 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_7_1_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_ce3126f525424941" hs_bindgen_ce3126f525424941 :: + 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:841: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_ce3126f525424941 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_c21ee0a05fc7d24b" hs_bindgen_c21ee0a05fc7d24b :: + 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:847: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_c21ee0a05fc7d24b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_dda71815562139ef" hs_bindgen_dda71815562139ef :: + 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:853: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_dda71815562139ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_a8debb22208d6326" hs_bindgen_a8debb22208d6326 :: + 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_a8debb22208d6326 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:858: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_a8debb22208d6326 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_9688a65736a050d7" hs_bindgen_9688a65736a050d7 :: + 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:864: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_9688a65736a050d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_e3ea62569da424b4" hs_bindgen_e3ea62569da424b4 :: + 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_e3ea62569da424b4 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:870: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_e3ea62569da424b4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_7e7dd3aa10e7f5cc" hs_bindgen_7e7dd3aa10e7f5cc :: + 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_7e7dd3aa10e7f5cc + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:876: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_7e7dd3aa10e7f5cc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_2d99424b4d7890bb" hs_bindgen_2d99424b4d7890bb :: + 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:884: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_2d99424b4d7890bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_818eebf58250de8f" hs_bindgen_818eebf58250de8f :: + 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:894: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_818eebf58250de8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_04d76e3582027a06" hs_bindgen_04d76e3582027a06 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:907: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_04d76e3582027a06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_8622c2a35486066b" hs_bindgen_8622c2a35486066b :: + 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:913:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_8622c2a35486066b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_12d94d0af6fb5c64" hs_bindgen_12d94d0af6fb5c64 :: + 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:918: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_12d94d0af6fb5c64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_c4cb6e4fd1de1e11" hs_bindgen_c4cb6e4fd1de1e11 :: + 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:923:28@ + +__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_c4cb6e4fd1de1e11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_c357a73390d81fd2" hs_bindgen_c357a73390d81fd2 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:928:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_c357a73390d81fd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_28f3e64c791b0783" hs_bindgen_28f3e64c791b0783 :: + 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:933: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_28f3e64c791b0783 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_316f783b3897e6e1" hs_bindgen_316f783b3897e6e1 :: + 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:938: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_316f783b3897e6e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_c49300e3e05af4e1" hs_bindgen_c49300e3e05af4e1 :: + 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:943: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_c49300e3e05af4e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_9e0d5e16da64ea61" hs_bindgen_9e0d5e16da64ea61 :: + 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:949: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_9e0d5e16da64ea61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_ecaddfa68c204562" hs_bindgen_ecaddfa68c204562 :: + 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:954: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_ecaddfa68c204562 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_78bdb8da22358a42" hs_bindgen_78bdb8da22358a42 :: + 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:959: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_78bdb8da22358a42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_084584deba473586" hs_bindgen_084584deba473586 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:964: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_084584deba473586 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_c6fb768020f40b8a" hs_bindgen_c6fb768020f40b8a :: + 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_c6fb768020f40b8a + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:969: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_c6fb768020f40b8a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_0d3efe11255e252e" hs_bindgen_0d3efe11255e252e :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:974: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_0d3efe11255e252e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_21e5cce6d7ef93a3" hs_bindgen_21e5cce6d7ef93a3 :: + 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:981: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_21e5cce6d7ef93a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_75d50aea1197adf2" hs_bindgen_75d50aea1197adf2 :: + 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:986: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_75d50aea1197adf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_f8f107cb859eaf63" hs_bindgen_f8f107cb859eaf63 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:988: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_f8f107cb859eaf63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_7611f0c05d229220" hs_bindgen_7611f0c05d229220 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:990: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_7611f0c05d229220 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_8014f7ad062c053f" hs_bindgen_8014f7ad062c053f :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:992: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_8014f7ad062c053f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_9c069ad7082bd528" hs_bindgen_9c069ad7082bd528 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:993: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_9c069ad7082bd528 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_01bff53480eb76fd" hs_bindgen_01bff53480eb76fd :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:995: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_01bff53480eb76fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_0dbc78a506e43393" hs_bindgen_0dbc78a506e43393 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:996: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_0dbc78a506e43393 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_166de76ad65a25d9" hs_bindgen_166de76ad65a25d9 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:998: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_166de76ad65a25d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_aacdc39da9d96f1a" hs_bindgen_aacdc39da9d96f1a :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:999: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_aacdc39da9d96f1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_d3a270a1b3e65ddc" hs_bindgen_d3a270a1b3e65ddc :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1000: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_d3a270a1b3e65ddc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_0e9bd22d935b851a" hs_bindgen_0e9bd22d935b851a :: + 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:1003: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_0e9bd22d935b851a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_ef11e947653bd06a" hs_bindgen_ef11e947653bd06a :: + 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:1006: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_ef11e947653bd06a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_4150303332711a74" hs_bindgen_4150303332711a74 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1013: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_4150303332711a74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_c50bd2178151fb2c" hs_bindgen_c50bd2178151fb2c :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1020: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_c50bd2178151fb2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_8b5656f1c65f10ae" hs_bindgen_8b5656f1c65f10ae :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1025: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_8b5656f1c65f10ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_0da360f7c08ed536" hs_bindgen_0da360f7c08ed536 :: + 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:1029: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_0da360f7c08ed536 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_e0eb0b7ca72628c3" hs_bindgen_e0eb0b7ca72628c3 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1031: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_e0eb0b7ca72628c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_261b5b0f25099b3f" hs_bindgen_261b5b0f25099b3f :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1032: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_261b5b0f25099b3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_3acacf4bcbc4a058" hs_bindgen_3acacf4bcbc4a058 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1034: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_3acacf4bcbc4a058 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_b6e0991c79744e13" hs_bindgen_b6e0991c79744e13 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1036: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_b6e0991c79744e13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_ccd73a0d477acb65" hs_bindgen_ccd73a0d477acb65 :: + 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:1039: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_ccd73a0d477acb65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_95ab5357dcf2a568" hs_bindgen_95ab5357dcf2a568 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1041: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_95ab5357dcf2a568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_14b566696b83ec57" hs_bindgen_14b566696b83ec57 :: + 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:1048: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_14b566696b83ec57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_441983a98f8fa906" hs_bindgen_441983a98f8fa906 :: + 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:1055: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_441983a98f8fa906 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_ed59e6e7cd584452" hs_bindgen_ed59e6e7cd584452 :: + 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:1060: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_ed59e6e7cd584452 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_3ed5165e4c7d96c0" hs_bindgen_3ed5165e4c7d96c0 :: + 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:1065: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_3ed5165e4c7d96c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_ec7a9de530fc6bb8" hs_bindgen_ec7a9de530fc6bb8 :: + 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:1083: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_ec7a9de530fc6bb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_e33dbc80b39cb945" hs_bindgen_e33dbc80b39cb945 :: + 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:1094: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_e33dbc80b39cb945 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_a177c4cf301c7508" hs_bindgen_a177c4cf301c7508 :: + 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:1110: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_a177c4cf301c7508 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_1c804f8048032e4b" hs_bindgen_1c804f8048032e4b :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1114: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_1c804f8048032e4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_67968a8ef1885623" hs_bindgen_67968a8ef1885623 :: + 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:1117: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_67968a8ef1885623 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_5fb2c3a02da50b32" hs_bindgen_5fb2c3a02da50b32 :: + 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:1119: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_5fb2c3a02da50b32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_6f557da1be63ce83" hs_bindgen_6f557da1be63ce83 :: + 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:1121: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_6f557da1be63ce83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_34b9898e61f81edf" hs_bindgen_34b9898e61f81edf :: + 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:1123: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_34b9898e61f81edf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_3a8a7d338e388a9b" hs_bindgen_3a8a7d338e388a9b :: + 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:1125: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_3a8a7d338e388a9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_28080b656fcf7c46" hs_bindgen_28080b656fcf7c46 :: + 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:1145: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_28080b656fcf7c46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_898ee6210a33e487" hs_bindgen_898ee6210a33e487 :: + 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:1167: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_898ee6210a33e487 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_f4bf1007c2828bfe" hs_bindgen_f4bf1007c2828bfe :: + 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_f4bf1007c2828bfe + +{-| 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:1175: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_f4bf1007c2828bfe x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_49d4a5a7b9908d87" hs_bindgen_49d4a5a7b9908d87 :: + 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:1180:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_49d4a5a7b9908d87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_fc46d62033ecffef" hs_bindgen_fc46d62033ecffef :: + 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:1193: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_fc46d62033ecffef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_1e18c621988e7fce" hs_bindgen_1e18c621988e7fce :: + 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:1198: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_1e18c621988e7fce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_4f142912018cbd7d" hs_bindgen_4f142912018cbd7d :: + 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:1203: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_4f142912018cbd7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_775d1bc8982d9c2e" hs_bindgen_775d1bc8982d9c2e :: + 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:1208: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_775d1bc8982d9c2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_5e809ca8668eadbf" hs_bindgen_5e809ca8668eadbf :: + 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:1210: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_5e809ca8668eadbf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_c485db0648e82c91" hs_bindgen_c485db0648e82c91 :: + 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:1217: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_c485db0648e82c91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_d53121097e938a5c" hs_bindgen_d53121097e938a5c :: + 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:1232: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_d53121097e938a5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_b029d39aa7db9580" hs_bindgen_b029d39aa7db9580 :: + 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:1247: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_b029d39aa7db9580 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_88211ce304236d27" hs_bindgen_88211ce304236d27 :: + 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:1264: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_88211ce304236d27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_cf85299c3380a898" hs_bindgen_cf85299c3380a898 :: + 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:1279: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_cf85299c3380a898 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_b701b6a2f38822bd" hs_bindgen_b701b6a2f38822bd :: + 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:1295: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_b701b6a2f38822bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_bb43be862b8983ab" hs_bindgen_bb43be862b8983ab :: + 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:1310: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_bb43be862b8983ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_6bb087466ed93ced" hs_bindgen_6bb087466ed93ced :: + 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_6bb087466ed93ced + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1321: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_6bb087466ed93ced x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_0dd2f1e80b183664" hs_bindgen_0dd2f1e80b183664 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1323: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_0dd2f1e80b183664 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_e8da648f0de7e086" hs_bindgen_e8da648f0de7e086 :: + 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:1325: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_e8da648f0de7e086 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_1ce1a2d97b88df80" hs_bindgen_1ce1a2d97b88df80 :: + 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:1330: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_1ce1a2d97b88df80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_ccfa879cb361ac39" hs_bindgen_ccfa879cb361ac39 :: + 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:1335: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_ccfa879cb361ac39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_cc0f2128766a74fc" hs_bindgen_cc0f2128766a74fc :: + 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:1340: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_cc0f2128766a74fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_ebaba2c321687758" hs_bindgen_ebaba2c321687758 :: + 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:1342: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_ebaba2c321687758 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_647e40dfe2a41736" hs_bindgen_647e40dfe2a41736 :: + 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:1347: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_647e40dfe2a41736 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_e59a0ee191bc095e" hs_bindgen_e59a0ee191bc095e :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1349: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_e59a0ee191bc095e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_f0f127ebaa4614fc" hs_bindgen_f0f127ebaa4614fc :: + 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:1352: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_f0f127ebaa4614fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_7d01082fb2b0efd2" hs_bindgen_7d01082fb2b0efd2 :: + 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:1357:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_7d01082fb2b0efd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_1f0b4fdcea4c00ee" hs_bindgen_1f0b4fdcea4c00ee :: + 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:1362: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_1f0b4fdcea4c00ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_0d2c1ca25e5c9c52" hs_bindgen_0d2c1ca25e5c9c52 :: + 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:1364: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_0d2c1ca25e5c9c52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_d23fd0db9bd55876" hs_bindgen_d23fd0db9bd55876 :: + 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:1369: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_d23fd0db9bd55876 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_7370fc39f7319c7b" hs_bindgen_7370fc39f7319c7b :: + 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_7370fc39f7319c7b + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1371: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_7370fc39f7319c7b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_eaa113d5058e7875" hs_bindgen_eaa113d5058e7875 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1374: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_eaa113d5058e7875 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_9025ea9811c9a0bf" hs_bindgen_9025ea9811c9a0bf :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1376: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_9025ea9811c9a0bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_47f066e1e7066e5f" hs_bindgen_47f066e1e7066e5f :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1378: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_47f066e1e7066e5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_651b496a3b79a728" hs_bindgen_651b496a3b79a728 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1380: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_651b496a3b79a728 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_0555d2f2e79e99b7" hs_bindgen_0555d2f2e79e99b7 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1382: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_0555d2f2e79e99b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_07b913aa0f697237" hs_bindgen_07b913aa0f697237 :: + 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:1385: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_07b913aa0f697237 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_a97fc5d0af362605" hs_bindgen_a97fc5d0af362605 :: + 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:1387: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_a97fc5d0af362605 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_e0fb2a6cb1a33e86" hs_bindgen_e0fb2a6cb1a33e86 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1390: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_e0fb2a6cb1a33e86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_4ffc690dbceae568" hs_bindgen_4ffc690dbceae568 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1392: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_4ffc690dbceae568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_7465f5c3b408eabb" hs_bindgen_7465f5c3b408eabb :: + 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:1398: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_7465f5c3b408eabb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_4da0c3bf02b94e30" hs_bindgen_4da0c3bf02b94e30 :: + 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:1401: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_4da0c3bf02b94e30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_a4cb47d93c281147" hs_bindgen_a4cb47d93c281147 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1404: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_a4cb47d93c281147 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_18e16e53d94231a4" hs_bindgen_18e16e53d94231a4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1407: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_18e16e53d94231a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_73024a1522e2c21d" hs_bindgen_73024a1522e2c21d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1409: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_73024a1522e2c21d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_325ca2032c7c446c" hs_bindgen_325ca2032c7c446c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1411: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_325ca2032c7c446c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_e86aeb24a07c5e49" hs_bindgen_e86aeb24a07c5e49 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1413: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_e86aeb24a07c5e49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_0432e14742502296" hs_bindgen_0432e14742502296 :: + 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:1428: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_0432e14742502296 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_b9e391f4420e2f4f" hs_bindgen_b9e391f4420e2f4f :: + 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:1442: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_b9e391f4420e2f4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_2cb54f5c79fdd180" hs_bindgen_2cb54f5c79fdd180 :: + 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:1460: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_2cb54f5c79fdd180 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_77e60df832738c5d" hs_bindgen_77e60df832738c5d :: + 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:1475: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_77e60df832738c5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_a86c490696760796" hs_bindgen_a86c490696760796 :: + 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_a86c490696760796 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_a86c490696760796 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_0f293cd6ba8637ea" hs_bindgen_0f293cd6ba8637ea :: + 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_0f293cd6ba8637ea + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1483: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_0f293cd6ba8637ea x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_1c5409cd16a8e023" hs_bindgen_1c5409cd16a8e023 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1485: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_1c5409cd16a8e023 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_704aa905fb566f19" hs_bindgen_704aa905fb566f19 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1487: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_704aa905fb566f19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_e5b6e33429ca16d5" hs_bindgen_e5b6e33429ca16d5 :: + 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_e5b6e33429ca16d5 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_e5b6e33429ca16d5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_d2f6704bc73753ad" hs_bindgen_d2f6704bc73753ad :: + 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_d2f6704bc73753ad + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1495: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_d2f6704bc73753ad x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_c4910ca787101e95" hs_bindgen_c4910ca787101e95 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1497: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_c4910ca787101e95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_c952e2f08320a1f9" hs_bindgen_c952e2f08320a1f9 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1499: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_c952e2f08320a1f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_7c63a07392dfb7f3" hs_bindgen_7c63a07392dfb7f3 :: + 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_7c63a07392dfb7f3 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_7c63a07392dfb7f3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_3faf374b12fcaad3" hs_bindgen_3faf374b12fcaad3 :: + 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_3faf374b12fcaad3 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1507: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_3faf374b12fcaad3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_d8b18528c8e45643" hs_bindgen_d8b18528c8e45643 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1509: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_d8b18528c8e45643 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_408496b105086114" hs_bindgen_408496b105086114 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1511: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_408496b105086114 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_e6a7148306836ff5" hs_bindgen_e6a7148306836ff5 :: + 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_e6a7148306836ff5 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_e6a7148306836ff5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_035b278667e258dd" hs_bindgen_035b278667e258dd :: + 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_035b278667e258dd + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1519: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_035b278667e258dd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_7986a09630a51d75" hs_bindgen_7986a09630a51d75 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1521: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_7986a09630a51d75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_aa01510cc4a23cca" hs_bindgen_aa01510cc4a23cca :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1523: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_aa01510cc4a23cca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_4115eba3e67779f3" hs_bindgen_4115eba3e67779f3 :: + 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_4115eba3e67779f3 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1530: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_4115eba3e67779f3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_bd7f6372714ab775" hs_bindgen_bd7f6372714ab775 :: + 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_bd7f6372714ab775 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1533: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_bd7f6372714ab775 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_fade3c272af01495" hs_bindgen_fade3c272af01495 :: + 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_fade3c272af01495 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_fade3c272af01495 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_1de2fab606bb16bc" hs_bindgen_1de2fab606bb16bc :: + 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_1de2fab606bb16bc + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1541: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_1de2fab606bb16bc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_95d7e0e717d71923" hs_bindgen_95d7e0e717d71923 :: + 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:1545: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_95d7e0e717d71923 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_6e6191da6493acca" hs_bindgen_6e6191da6493acca :: + 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:1549: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_6e6191da6493acca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_25bf616e0533ca17" hs_bindgen_25bf616e0533ca17 :: + 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_25bf616e0533ca17 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1556: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_25bf616e0533ca17 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_06faa62a17492f41" hs_bindgen_06faa62a17492f41 :: + 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_06faa62a17492f41 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1559: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_06faa62a17492f41 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_586fc4fe5088f8c1" hs_bindgen_586fc4fe5088f8c1 :: + 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_586fc4fe5088f8c1 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1566: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_586fc4fe5088f8c1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_eff2e44f4aa4d7d8" hs_bindgen_eff2e44f4aa4d7d8 :: + 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_eff2e44f4aa4d7d8 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1572: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_eff2e44f4aa4d7d8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_92864dcb36ea32b2" hs_bindgen_92864dcb36ea32b2 :: + 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_92864dcb36ea32b2 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1582: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_92864dcb36ea32b2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_fe7c047c55799f01" hs_bindgen_fe7c047c55799f01 :: + 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_fe7c047c55799f01 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1585: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_fe7c047c55799f01 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_37d92949c42b9080" hs_bindgen_37d92949c42b9080 :: + 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_37d92949c42b9080 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1592: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_37d92949c42b9080 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_1d1c69d84b30a7e3" hs_bindgen_1d1c69d84b30a7e3 :: + 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_1d1c69d84b30a7e3 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1595: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_1d1c69d84b30a7e3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_94b46eac1e50d966" hs_bindgen_94b46eac1e50d966 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1601: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_94b46eac1e50d966 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_cf37758e754d25ad" hs_bindgen_cf37758e754d25ad :: + 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:1604: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_cf37758e754d25ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_b9e1b8240292618b" hs_bindgen_b9e1b8240292618b :: + 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:1607: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_b9e1b8240292618b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_24d2d496620478ba" hs_bindgen_24d2d496620478ba :: + 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:1610: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_24d2d496620478ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_b1b6f7c97100853e" hs_bindgen_b1b6f7c97100853e :: + 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:1613: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_b1b6f7c97100853e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_7638a759e05dd573" hs_bindgen_7638a759e05dd573 :: + 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:1616: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_7638a759e05dd573 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_daf79e3cb00ea0fb" hs_bindgen_daf79e3cb00ea0fb :: + 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:1619: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_daf79e3cb00ea0fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_e421dbe5a60bd421" hs_bindgen_e421dbe5a60bd421 :: + 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:1623: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_e421dbe5a60bd421 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_6e680d1935475404" hs_bindgen_6e680d1935475404 :: + 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:1627: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_6e680d1935475404 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_64d124afafc15fb3" hs_bindgen_64d124afafc15fb3 :: + 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:1630: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_64d124afafc15fb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_7b857d543169eaa2" hs_bindgen_7b857d543169eaa2 :: + 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:1637: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_7b857d543169eaa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_57d8c0709962fa37" hs_bindgen_57d8c0709962fa37 :: + 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:1645: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_57d8c0709962fa37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_96e2c854fa408252" hs_bindgen_96e2c854fa408252 :: + 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:1650: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_96e2c854fa408252 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_9ea334227458f653" hs_bindgen_9ea334227458f653 :: + 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:1653: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_9ea334227458f653 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_cf708a0943cd7599" hs_bindgen_cf708a0943cd7599 :: + 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_cf708a0943cd7599 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1656: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_cf708a0943cd7599 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_638043d73aced221" hs_bindgen_638043d73aced221 :: + 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:1669: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_638043d73aced221 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_7c3376d261823349" hs_bindgen_7c3376d261823349 :: + 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:1674: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_7c3376d261823349 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_9ed3f37844c0e50c" hs_bindgen_9ed3f37844c0e50c :: + 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:1677: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_9ed3f37844c0e50c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_6cec06e2ad3c3030" hs_bindgen_6cec06e2ad3c3030 :: + 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_6cec06e2ad3c3030 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1680: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_6cec06e2ad3c3030 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_67a6368c77d3238d" hs_bindgen_67a6368c77d3238d :: + 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:1692: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_67a6368c77d3238d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_c87ccc2d11f9dd31" hs_bindgen_c87ccc2d11f9dd31 :: + 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:1697: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_c87ccc2d11f9dd31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_4ba0e73d8418142f" hs_bindgen_4ba0e73d8418142f :: + 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:1699: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_4ba0e73d8418142f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_e1527f0fad241d17" hs_bindgen_e1527f0fad241d17 :: + 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_e1527f0fad241d17 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1701: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_e1527f0fad241d17 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_c04d30409e2b7b58" hs_bindgen_c04d30409e2b7b58 :: + 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:1704: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_c04d30409e2b7b58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_302c5b5ad8875643" hs_bindgen_302c5b5ad8875643 :: + 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:1712: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_302c5b5ad8875643 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_795a55a2e7e853fc" hs_bindgen_795a55a2e7e853fc :: + 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:1720: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_795a55a2e7e853fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_586fdc3ef6f9640f" hs_bindgen_586fdc3ef6f9640f :: + 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_586fdc3ef6f9640f + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1722: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_586fdc3ef6f9640f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_ffbe2e141fbc4394" hs_bindgen_ffbe2e141fbc4394 :: + 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_ffbe2e141fbc4394 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1723: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_ffbe2e141fbc4394 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_677ae72421625684" hs_bindgen_677ae72421625684 :: + 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:1731: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_677ae72421625684 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_4dcf7c915fb44c28" hs_bindgen_4dcf7c915fb44c28 :: + 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:1736: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_4dcf7c915fb44c28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_45f9879f5a5dd6a9" hs_bindgen_45f9879f5a5dd6a9 :: + 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:1738: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_45f9879f5a5dd6a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_2a5eed5ca80144cb" hs_bindgen_2a5eed5ca80144cb :: + 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:1741: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_2a5eed5ca80144cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_5b542f73dde72104" hs_bindgen_5b542f73dde72104 :: + 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:1743: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_5b542f73dde72104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_3644a81792e9e005" hs_bindgen_3644a81792e9e005 :: + 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_3644a81792e9e005 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1746: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_3644a81792e9e005 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_7eb78c279ee96cff" hs_bindgen_7eb78c279ee96cff :: + 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:1760: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_7eb78c279ee96cff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_f315c33334528774" hs_bindgen_f315c33334528774 :: + 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:1765: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_f315c33334528774 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_3be2e30c440a6f6b" hs_bindgen_3be2e30c440a6f6b :: + 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:1768: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_3be2e30c440a6f6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_fa228dd12d2982ce" hs_bindgen_fa228dd12d2982ce :: + 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:1773: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_fa228dd12d2982ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_99a364ab955b17d3" hs_bindgen_99a364ab955b17d3 :: + 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_99a364ab955b17d3 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1777: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_99a364ab955b17d3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_12fc8b239d71480f" hs_bindgen_12fc8b239d71480f :: + 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:1790: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_12fc8b239d71480f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_e765470023b314f7" hs_bindgen_e765470023b314f7 :: + 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:1795: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_e765470023b314f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_e3a12bc47d38c11d" hs_bindgen_e3a12bc47d38c11d :: + 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:1798: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_e3a12bc47d38c11d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_dd8e0fd746618c1d" hs_bindgen_dd8e0fd746618c1d :: + 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_dd8e0fd746618c1d + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1803: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_dd8e0fd746618c1d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_3c6575da6b6fdf43" hs_bindgen_3c6575da6b6fdf43 :: + 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:1816: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_3c6575da6b6fdf43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_1d12e495100286b2" hs_bindgen_1d12e495100286b2 :: + 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_1d12e495100286b2 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1823: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_1d12e495100286b2 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_37ab5b0b419c8f36" hs_bindgen_37ab5b0b419c8f36 :: + 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_37ab5b0b419c8f36 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1838: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_37ab5b0b419c8f36 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_ba52172f00ce4f4f" hs_bindgen_ba52172f00ce4f4f :: + 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_ba52172f00ce4f4f + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1853: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_ba52172f00ce4f4f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_614b7b17312d0c3f" hs_bindgen_614b7b17312d0c3f :: + 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:1854: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_614b7b17312d0c3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_88279437b976d76b" hs_bindgen_88279437b976d76b :: + 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:1859: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_88279437b976d76b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_a71044d452dd5ce0" hs_bindgen_a71044d452dd5ce0 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1861: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_a71044d452dd5ce0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_0312574601550d3e" hs_bindgen_0312574601550d3e :: + 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:1864: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_0312574601550d3e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_4a02301687019365" hs_bindgen_4a02301687019365 :: + 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:1865: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_4a02301687019365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_4aa7ef416421d137" hs_bindgen_4aa7ef416421d137 :: + 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:1867: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_4aa7ef416421d137 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_af678f108d5660a3" hs_bindgen_af678f108d5660a3 :: + 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:1868: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_af678f108d5660a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_2e927192de95dca5" hs_bindgen_2e927192de95dca5 :: + 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:1871: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_2e927192de95dca5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_12e57789e19eafb7" hs_bindgen_12e57789e19eafb7 :: + 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:1873: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_12e57789e19eafb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_4c1246b7298d694b" hs_bindgen_4c1246b7298d694b :: + 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:1874: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_4c1246b7298d694b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_14478ca891b1385a" hs_bindgen_14478ca891b1385a :: + 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:1875: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_14478ca891b1385a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_d8c1bbd66bf60691" hs_bindgen_d8c1bbd66bf60691 :: + 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:1877: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_d8c1bbd66bf60691 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_edd5a4a3fc4672aa" hs_bindgen_edd5a4a3fc4672aa :: + 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:1880: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_edd5a4a3fc4672aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_f5b61e47b4a24b3b" hs_bindgen_f5b61e47b4a24b3b :: + 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:1882: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_f5b61e47b4a24b3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_59bdd3907a913242" hs_bindgen_59bdd3907a913242 :: + 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:1885: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_59bdd3907a913242 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_d13e4430d76d88fa" hs_bindgen_d13e4430d76d88fa :: + 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:1889: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_d13e4430d76d88fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_c4bcf6a309d353c6" hs_bindgen_c4bcf6a309d353c6 :: + 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:1892: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_c4bcf6a309d353c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_2bd1631e328b0b25" hs_bindgen_2bd1631e328b0b25 :: + 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:1895: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_2bd1631e328b0b25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_705986660f39f167" hs_bindgen_705986660f39f167 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1911: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_705986660f39f167 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_3a25b2d384c725fb" hs_bindgen_3a25b2d384c725fb :: + 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:1917: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_3a25b2d384c725fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_65e6a1612cc8a319" hs_bindgen_65e6a1612cc8a319 :: + 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:1928: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_65e6a1612cc8a319 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_ab5eb5b11cba35bc" hs_bindgen_ab5eb5b11cba35bc :: + 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:1943: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_ab5eb5b11cba35bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_0b499e8c6cdc326e" hs_bindgen_0b499e8c6cdc326e :: + 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:1951: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_0b499e8c6cdc326e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_4f1fc7c1bf04385a" hs_bindgen_4f1fc7c1bf04385a :: + 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_4f1fc7c1bf04385a + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1953: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_4f1fc7c1bf04385a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_e0401812442b57db" hs_bindgen_e0401812442b57db :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1955: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_e0401812442b57db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_a3d556a3d582f193" hs_bindgen_a3d556a3d582f193 :: + 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:1961: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_a3d556a3d582f193 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_1d3e632d7fbe926b" hs_bindgen_1d3e632d7fbe926b :: + 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:1968: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_1d3e632d7fbe926b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_e894838393bbea02" hs_bindgen_e894838393bbea02 :: + 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_e894838393bbea02 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1986: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_e894838393bbea02 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_d1679d52b3ab0c62" hs_bindgen_d1679d52b3ab0c62 :: + 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_d1679d52b3ab0c62 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1995: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_d1679d52b3ab0c62 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_1229b7f7117900f3" hs_bindgen_1229b7f7117900f3 :: + 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_1229b7f7117900f3 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2003: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_1229b7f7117900f3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_8bfca139ed7f5644" hs_bindgen_8bfca139ed7f5644 :: + 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_8bfca139ed7f5644 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2013: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_8bfca139ed7f5644 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_e80ee12857cf1e2c" hs_bindgen_e80ee12857cf1e2c :: + 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_e80ee12857cf1e2c + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2032: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_e80ee12857cf1e2c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_3d6909b9bf268f67" hs_bindgen_3d6909b9bf268f67 :: + 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:2039:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_3d6909b9bf268f67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_43af747575c68bc4" hs_bindgen_43af747575c68bc4 :: + 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:2045: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_43af747575c68bc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_694de16cb38fcd9f" hs_bindgen_694de16cb38fcd9f :: + 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:2051: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_694de16cb38fcd9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_2f83ee7f2f5947a9" hs_bindgen_2f83ee7f2f5947a9 :: + 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_2f83ee7f2f5947a9 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2064: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_2f83ee7f2f5947a9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_bc47d2413136e07f" hs_bindgen_bc47d2413136e07f :: + 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:2072:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_bc47d2413136e07f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_ad0fc2f326792f43" hs_bindgen_ad0fc2f326792f43 :: + 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:2081: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_ad0fc2f326792f43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_ca841a341325b33f" hs_bindgen_ca841a341325b33f :: + 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:2092: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_ca841a341325b33f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_22c90d0da760b7a2" hs_bindgen_22c90d0da760b7a2 :: + 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_22c90d0da760b7a2 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2103: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_22c90d0da760b7a2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_163c0a57682c98f6" hs_bindgen_163c0a57682c98f6 :: + 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:2110:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_163c0a57682c98f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_99e8a7d8c8c6e55b" hs_bindgen_99e8a7d8c8c6e55b :: + 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_99e8a7d8c8c6e55b + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2113: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_99e8a7d8c8c6e55b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_17cd0026772ebd05" hs_bindgen_17cd0026772ebd05 :: + 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_17cd0026772ebd05 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2116: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_17cd0026772ebd05 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_89e002673ff92d5d" hs_bindgen_89e002673ff92d5d :: + 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:2128: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_89e002673ff92d5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_9878ba818571c881" hs_bindgen_9878ba818571c881 :: + 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:2136: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_9878ba818571c881 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_0f7bed056d50745b" hs_bindgen_0f7bed056d50745b :: + 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_0f7bed056d50745b + +{-| 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:2151: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_0f7bed056d50745b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_c619be7676cec17d" hs_bindgen_c619be7676cec17d :: + 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_c619be7676cec17d + +{-| 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:2170: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_c619be7676cec17d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_14e69a040cfacb11" hs_bindgen_14e69a040cfacb11 :: + 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_14e69a040cfacb11 + +{-| 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:2186: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_14e69a040cfacb11 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_fbda96748b1c7873" hs_bindgen_fbda96748b1c7873 :: + 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_fbda96748b1c7873 + +{-| 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:2213: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_fbda96748b1c7873 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_7_1_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_7713c0cc1e00a969" hs_bindgen_7713c0cc1e00a969 :: + 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:2231: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_7713c0cc1e00a969 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_8d52c9501b40b54c" hs_bindgen_8d52c9501b40b54c :: + 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:2252: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_8d52c9501b40b54c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_7da819b9caa6c3f9" hs_bindgen_7da819b9caa6c3f9 :: + 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:2273: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_7da819b9caa6c3f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_2a120ed92819e873" hs_bindgen_2a120ed92819e873 :: + 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:2298:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_2a120ed92819e873 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_614222afde3a45ae" hs_bindgen_614222afde3a45ae :: + 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:2306: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_614222afde3a45ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_9df279ee33723134" hs_bindgen_9df279ee33723134 :: + 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:2316: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_9df279ee33723134 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_ctx_from_esys@ +foreign import ccall safe "hs_bindgen_0052e24cbdc84f3f" hs_bindgen_0052e24cbdc84f3f :: + 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:2327: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_0052e24cbdc84f3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_2d95d17ee09b70af" hs_bindgen_2d95d17ee09b70af :: + 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:2339: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_2d95d17ee09b70af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_381e563f9950b23c" hs_bindgen_381e563f9950b23c :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2346: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_381e563f9950b23c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_d9c18c2ba0b672cc" hs_bindgen_d9c18c2ba0b672cc :: + 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:2360: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_d9c18c2ba0b672cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall safe "hs_bindgen_1223037305c9bbb7" hs_bindgen_1223037305c9bbb7 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2372: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_1223037305c9bbb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_53ca5185237ee93f" hs_bindgen_53ca5185237ee93f :: + 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:2383: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_53ca5185237ee93f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_9ec5dbb51b7c4870" hs_bindgen_9ec5dbb51b7c4870 :: + 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:2395: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_9ec5dbb51b7c4870 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_b01a712b26f878e0" hs_bindgen_b01a712b26f878e0 :: + 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:2402: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_b01a712b26f878e0 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/Unsafe.hs new file mode 100644 index 00000000..9bab1534 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_7_1/Unsafe.hs @@ -0,0 +1,13730 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_7_1.Unsafe where + +import Botan.Bindings.Generated.Botan_3_7_1 +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_70d9ebcda57b50d3 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_815f99f5b99f115c (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_c262b3fc62ef05af (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_76d4abbf701f6410 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_d7196dd13b9de968 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_9ecd3e7e43ea80e8 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_9af55a9b9df3008e (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_a3cc16daea97ddce (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_9fa60236d845f3a3 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_38cf1a8d50734865 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a90a4d4acb417b07 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ac38e131c972339 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c1cc497970502389 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_45a1455e572e98ba (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_345b5801ec2da351 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_fcd53431558a32a4 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f6350209260c0237 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a97f657a72eec5f (" + , " 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_9a22a1051a5934e8 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51e2cb8ee26b8762 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ba5628df5811f234 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b8dd5ca6eaed3ac (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2eb128765134ad99 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1ad086479691e99b (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_92aff06590a8e77e (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3591e748cfc062d (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6a7d8738c69b3e3f (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_235e2c0fcfb7355d (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e3d141320f6ac79e (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a76c438530bbfbfb (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_65f6c09533552730 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_fa9676980ad79f99 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_62e771ea76c2a9f8 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b1b2218f86223f44 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_32a0e914410ae226 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e57ab3683de4bacb (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c051678ca5861c5 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82fb5d3361ca7628 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e0bed66f0d109e3 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_107c2e28ade4eb27 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_291fd906f68c5308 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aa1eea62f15a4596 (" + , " 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_e81aba856caae677 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fe2030631fd47c6e (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_807ee3b108e593ec (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_83f869666d751b07 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_20c626f50b763ae5 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d9c6ddd06658154b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_91bde638e6bfd2c2 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_1ce283bb0cfb697c (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_2e047f81c5b91291 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92f2ea0f2bb9333b (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ade10bda66d4717 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dd18b07113f57443 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_25c1bc0490dd3b58 (" + , " 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_a1537846f970b656 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d990473e2d63e4d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_63f263d629b14124 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5bc760c2bc1507c (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_00e709549bcdedf7 (" + , " 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_c1d2a43f9fa7c224 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_d23815112c1b147c (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_33319187f7a52850 (" + , " 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_9d5c67583b1ebca3 (" + , " 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_6c989081813aa1d6 (" + , " 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_28ad1727c6bbcd9d (" + , " 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_e3e34e1e295aaa90 (" + , " 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_c9fd3b512bc780a5 (" + , " 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_676ad448f13bae35 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f465b68205b35e83 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_10e5c8e29e90c367 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_bfc53b79c542c648 (" + , " 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_484b23bd6e777485 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_8a252767f1d5b306 (" + , " 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_e95bc331c06f45df (" + , " 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_e8105704ea45f0a7 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aba2ac30506e8024 (" + , " 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_809b823e0984dd83 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_add649ce9eb49be2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d199c3963a9406b3 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0d598267bcfe0e4 (" + , " 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_68a322b42531c146 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_0af86acbb7225d78 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dabd97482ff17d90 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_78fa95f4758b94b3 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a158eec12305fc54 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d021c464dbdb7930 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_80208be7d7fbd764 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0b0ceb8f9a1b7228 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9b7855fc42122662 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_70df49348f7307a3 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4fae69da7bba244c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_0dc9625df6224d05 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_ce7d10bc0d7ca574 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_eec41c5dc7c6a006 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_9a6d228cba81d044 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_50fcc51a7dcfd97c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_10378698063a539f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d154db2928289bc2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_31e01ad933196d40 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_11922ba3f68d05f6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5cbd5d2bd563474d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fdcdd674ab77c2f6 (" + , " 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_3fb55225ed027e2e (" + , " 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_573149bcdf58216e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e58267f2e2b977d4 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_749852cacb258849 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_db9423e15cf62eec (" + , " 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_a30b3f6f18b7df62 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51faa6afeed3ee56 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c66bef0b81dcff9a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4da041b95bc024b8 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6effdaf16108d02e (" + , " 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_35edf6353919ea8d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6781069c304d4e2c (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb35381291bfcd5f (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_027f1f2c9430dcb3 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b69c8be618ecc313 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45a0c91e6b99de3c (" + , " 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_6fc2955570ec382d (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9712fa88c6445629 (" + , " 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_6dce79628216b9cf (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_01bb19c39cf8a951 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f5af985340b5d926 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_733a9690e31e3860 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27163297f8d4a9de (" + , " 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_8b68d003f78fbbf2 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eae9eeaa8a46da19 (" + , " 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_59e890066f0ab576 (" + , " 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_879a56e8f4c0a399 (" + , " 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_383a703d6063bc43 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ad04a2e1551f0387 (" + , " 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_949ad173d24a1906 (" + , " 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_d9d5e42bdd05840a (" + , " 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_bfc5864677d3f36c (" + , " 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_f41068b72f560881 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_62cddeffe4841180 (" + , " 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_71621d95f94e5e1a (" + , " 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_02d3d2ab156406c9 (" + , " 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_affd0340cb764ba9 (" + , " 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_031818d9e7465104 (" + , " 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_cc2014e1e30bcf69 (" + , " 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_978a04bf158dab66 (" + , " 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_1640624beb5cd9b1 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f9b288371db735c (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_36cb802920adc8c3 (" + , " 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_d68857ae341edc5a (" + , " 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_f55cbf440e4ea714 (" + , " 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_bae7d4a7b86b99d5 (" + , " 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_d98d06788ab4b64f (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_db3f41c4ce2c401e (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d677d631997695f0 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eb8d8aa6b903d60e (" + , " 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_a647834688ac1f87 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b311140eba387dcd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fafcbc5d437ff0cf (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8072090ac707b42c (" + , " 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_b0dea2ef8368d271 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6ea514d2d0aab077 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3683bf94cb2ec00c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b53f4a2e49b744e3 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_977617544f103191 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eccf9824c54ac518 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d069473c397ac0ba (" + , " 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_0bee2039f8405f05 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_76518d7880f523db (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_09927992b8cf2511 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2af2b11f26973f2 (" + , " 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_b3568b4d531adb5e (" + , " 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_8d6acae817831ee0 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6155d7adc60cbfdc (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d0d22ef5f5502350 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5d0c4c9332550957 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f99a571171bab50e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_526678a005ce7920 (" + , " 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_1bfbb0ebda00a2b8 (" + , " 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_dfda5f8fa0c938a1 (" + , " 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_5b11d457e8ca6a29 (" + , " 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_8b1935ef0145c3aa (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d6415030779a7939 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3055128927ee8cb4 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f886e853b7b14fe2 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f8c4ac82dd30802 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e7653d92fd413060 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_95f52890655baa59 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d80189b0291efe7c (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_17a0d652991fcd63 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6dc7af5454d01b19 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_88220b9db472a4bf (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fd34a91f710b6802 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3daa83b1224616a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cdeb563b0e0745cb (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e5b0fad14c7c989b (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3164022ceda791da (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2fc5dd5bbf038232 (" + , " 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_5016d74203e65753 (" + , " 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_c5aa2ba1721f6b88 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_964eb64890f59d08 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_282e358e9367a80d (" + , " 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_114504ea01e6fa86 (" + , " 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_83f1904f43813db3 (" + , " 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_db3747bb0e797d93 (" + , " 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_9536a1b470ae549d (" + , " 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_00a75a16557c2910 (" + , " 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_80f9ac71419c9dbb (" + , " 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_fcfd653a26161cd2 (" + , " 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_7432893c5317369e (" + , " 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_87022ea5b8d0a048 (" + , " 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_cb570f60fa22e7b1 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_3b4f7991dca1c1f0 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fedb2dd8848e5dca (" + , " 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_a1a3505adf5d733d (" + , " 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_5cc7de7a808a04a3 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ae3d2c9240d6e469 (" + , " 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_9b79f703f145fce6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_625e121bfefa1064 (" + , " 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_f7676da44cfe7ab4 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5fdd4e35a1854746 (" + , " 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_967b0b7d7d3e302e (" + , " 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_55da2132c05757ae (" + , " 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_e3e3f83943a07e73 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dd3d37e68ab1b156 (" + , " 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_9aa626a6fc2d166b (" + , " 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_9c9da4a30936bd37 (" + , " 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_264d1acb2a08a13a (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_01486a8e5883121d (" + , " 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_9725b831295179cd (" + , " 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_7fc4e676079863a0 (" + , " 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_eeb98b3e9a2bb40f (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_260dcbbf28d89082 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8b138b0bfec557a4 (" + , " 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_98a0fabcc3f15df8 (" + , " 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_19e039cc1e42db56 (" + , " 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_360970da3bda2e46 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_efdb50ecf8be5eec (" + , " 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_9efb62fa758f98b8 (" + , " 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_e1616479210c5c45 (" + , " 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_6808f7959a70fd7e (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d245830fc5f302c4 (" + , " 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_c9286d21446d6030 (" + , " 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_cfef9c911341bb5e (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0e6ef6c02f380a57 (" + , " 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_6d83fa7bd6774435 (" + , " 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_5f9122c2860b9727 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7844768138822741 (" + , " 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_ff0bd4ef91ad5795 (" + , " 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_a5fb567e5cacbddd (" + , " 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_426ef89ffedfe8a8 (" + , " 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_2867f9b1b747163f (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6a15bd5de972be33 (" + , " 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_5e122b926f01e247 (" + , " 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_6fa7fde2ae6e0b32 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d413096efa511cd9 (" + , " 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_0d305b33c905aedc (" + , " 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_edf29fff19d862fc (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ea4bb5b8a6c4636 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2631f1e14753c547 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e00b7fa2ae7ab170 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1152bb24e9220e1 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_439580a0e69b07bf (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_79eee64f12e3fb60 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_88448ee86294976d (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5a8d965bc46b2ba3 (" + , " 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_70d6270da1385eac (" + , " 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_3c54b2b3ca96ebe1 (" + , " 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_4535e47294c83033 (" + , " 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_dfc31569f0a5391b (" + , " 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_0c910de46db2493a (" + , " 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_f1b2a0ee414d05db (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_155f075af034695f (" + , " 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_ccdbcf6cbf18d5bd (" + , " 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_7c0774e79e9dbf28 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c485ee12dc01fd45 (" + , " 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_33e627285846d13d (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f18e1fe3b6cc9907 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9c621549f78426ea (" + , " 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_788abdb11aa25976 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_d0725ac9903e7123 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_59ae69217a341fc8 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9af9522371f199a8 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ae22d1170bdfa605 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_563421f286251654 (" + , " 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_6c0e116573cf58a3 (" + , " 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_eaadb4586f9c1b1c (" + , " 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_225f49d2217adc5b (" + , " 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_5288e1ed94109224 (" + , " 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_b94491ff933fa3e5 (" + , " 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_8507f789dc3df0b7 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2b2cf2371d33f8ea (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_efc3ec3a97198601 (" + , " 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_06fa88f14652efa8 (" + , " 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_64193e662bb6c356 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bb25d9fedbd69a51 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_76096eb9f3759ea9 (" + , " 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_9b2a35d2765df1c9 (" + , " 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_04773d1968306c03 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2ecc131d593295cc (" + , " 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_c50bccfc9e42d8a3 (" + , " 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_ad7c2b52523f345e (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_9440d00796ec3862 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9a3225d29e9ca556 (" + , " 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_cc4de970844b73b0 (" + , " 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_f77de4d41fd10957 (" + , " 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_7f12af696782f032 (" + , " 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_48f7221fa52a9f71 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_334f51f375fed8e5 (" + , " 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_a2153bf47736547e (" + , " 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_6c4ef8664d49ce69 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_e0fe51a956b12bdb (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7919b53b9e092909 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dca83794ba6702da (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c29ad220c1063ad2 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ba772eff1e918d8f (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d128633db48f712c (" + , " 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_2a74fb05086cec47 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f74dd248259c0274 (" + , " 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_32e4623afcb30e5b (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e16b2251f6d7caa8 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_70d9ebcda57b50d3" hs_bindgen_70d9ebcda57b50d3 :: + 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:170: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_70d9ebcda57b50d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_815f99f5b99f115c" hs_bindgen_815f99f5b99f115c :: + 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:179: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_815f99f5b99f115c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_c262b3fc62ef05af" hs_bindgen_c262b3fc62ef05af :: + 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:186:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_c262b3fc62ef05af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_76d4abbf701f6410" hs_bindgen_76d4abbf701f6410 :: + 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:192: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_76d4abbf701f6410 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_d7196dd13b9de968" hs_bindgen_d7196dd13b9de968 :: + 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:197:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_d7196dd13b9de968 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_9ecd3e7e43ea80e8" hs_bindgen_9ecd3e7e43ea80e8 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:202:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_9ecd3e7e43ea80e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_9af55a9b9df3008e" hs_bindgen_9af55a9b9df3008e :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:207:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_9af55a9b9df3008e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_a3cc16daea97ddce" hs_bindgen_a3cc16daea97ddce :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:212:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_a3cc16daea97ddce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_9fa60236d845f3a3" hs_bindgen_9fa60236d845f3a3 :: + 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:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_9fa60236d845f3a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_38cf1a8d50734865" hs_bindgen_38cf1a8d50734865 :: + 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:223: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_38cf1a8d50734865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_a90a4d4acb417b07" hs_bindgen_a90a4d4acb417b07 :: + 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:229: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_a90a4d4acb417b07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_9ac38e131c972339" hs_bindgen_9ac38e131c972339 :: + 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:235: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_9ac38e131c972339 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_c1cc497970502389" hs_bindgen_c1cc497970502389 :: + 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:247: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_c1cc497970502389 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_45a1455e572e98ba" hs_bindgen_45a1455e572e98ba :: + 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:257: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_45a1455e572e98ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_345b5801ec2da351" hs_bindgen_345b5801ec2da351 :: + 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:262:28@ + +__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_345b5801ec2da351 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_fcd53431558a32a4" hs_bindgen_fcd53431558a32a4 :: + 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:267: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_fcd53431558a32a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_f6350209260c0237" hs_bindgen_f6350209260c0237 :: + 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:286: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_f6350209260c0237 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_3a97f657a72eec5f" hs_bindgen_3a97f657a72eec5f :: + 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:298: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_3a97f657a72eec5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_9a22a1051a5934e8" hs_bindgen_9a22a1051a5934e8 :: + 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:312: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_9a22a1051a5934e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_51e2cb8ee26b8762" hs_bindgen_51e2cb8ee26b8762 :: + 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:320: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_51e2cb8ee26b8762 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_ba5628df5811f234" hs_bindgen_ba5628df5811f234 :: + 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:330: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_ba5628df5811f234 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_2b8dd5ca6eaed3ac" hs_bindgen_2b8dd5ca6eaed3ac :: + 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:340: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_2b8dd5ca6eaed3ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_2eb128765134ad99" hs_bindgen_2eb128765134ad99 :: + 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:350: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_2eb128765134ad99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_1ad086479691e99b" hs_bindgen_1ad086479691e99b :: + 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:357: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_1ad086479691e99b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_92aff06590a8e77e" hs_bindgen_92aff06590a8e77e :: + 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:371: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_92aff06590a8e77e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_d3591e748cfc062d" hs_bindgen_d3591e748cfc062d :: + 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:379: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_d3591e748cfc062d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_6a7d8738c69b3e3f" hs_bindgen_6a7d8738c69b3e3f :: + 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:387: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_6a7d8738c69b3e3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_235e2c0fcfb7355d" hs_bindgen_235e2c0fcfb7355d :: + 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:395: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_235e2c0fcfb7355d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_e3d141320f6ac79e" hs_bindgen_e3d141320f6ac79e :: + 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:404: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_e3d141320f6ac79e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_a76c438530bbfbfb" hs_bindgen_a76c438530bbfbfb :: + 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:414: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_a76c438530bbfbfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_65f6c09533552730" hs_bindgen_65f6c09533552730 :: + 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:422: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_65f6c09533552730 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_fa9676980ad79f99" hs_bindgen_fa9676980ad79f99 :: + 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:429: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_fa9676980ad79f99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_62e771ea76c2a9f8" hs_bindgen_62e771ea76c2a9f8 :: + 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:437: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_62e771ea76c2a9f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_b1b2218f86223f44" hs_bindgen_b1b2218f86223f44 :: + 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:452: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_b1b2218f86223f44 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_32a0e914410ae226" hs_bindgen_32a0e914410ae226 :: + 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:460: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_32a0e914410ae226 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_e57ab3683de4bacb" hs_bindgen_e57ab3683de4bacb :: + 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:469: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_e57ab3683de4bacb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_1c051678ca5861c5" hs_bindgen_1c051678ca5861c5 :: + 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:478: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_1c051678ca5861c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_82fb5d3361ca7628" hs_bindgen_82fb5d3361ca7628 :: + 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:487: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_82fb5d3361ca7628 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_0e0bed66f0d109e3" hs_bindgen_0e0bed66f0d109e3 :: + 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:497: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_0e0bed66f0d109e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_107c2e28ade4eb27" hs_bindgen_107c2e28ade4eb27 :: + 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:505: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_107c2e28ade4eb27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_291fd906f68c5308" hs_bindgen_291fd906f68c5308 :: + 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:513: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_291fd906f68c5308 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_aa1eea62f15a4596" hs_bindgen_aa1eea62f15a4596 :: + 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:523: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_aa1eea62f15a4596 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_e81aba856caae677" hs_bindgen_e81aba856caae677 :: + 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:533: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_e81aba856caae677 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_fe2030631fd47c6e" hs_bindgen_fe2030631fd47c6e :: + 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:547: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_fe2030631fd47c6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_807ee3b108e593ec" hs_bindgen_807ee3b108e593ec :: + 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:552: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_807ee3b108e593ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_83f869666d751b07" hs_bindgen_83f869666d751b07 :: + 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:557: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_83f869666d751b07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_20c626f50b763ae5" hs_bindgen_20c626f50b763ae5 :: + 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:562: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_20c626f50b763ae5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_d9c6ddd06658154b" hs_bindgen_d9c6ddd06658154b :: + 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:567: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_d9c6ddd06658154b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_91bde638e6bfd2c2" hs_bindgen_91bde638e6bfd2c2 :: + 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:572: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_91bde638e6bfd2c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_1ce283bb0cfb697c" hs_bindgen_1ce283bb0cfb697c :: + 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:579: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_1ce283bb0cfb697c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_2e047f81c5b91291" hs_bindgen_2e047f81c5b91291 :: + 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:584: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_2e047f81c5b91291 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_92f2ea0f2bb9333b" hs_bindgen_92f2ea0f2bb9333b :: + 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:590: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_92f2ea0f2bb9333b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_9ade10bda66d4717" hs_bindgen_9ade10bda66d4717 :: + 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:596: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_9ade10bda66d4717 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_dd18b07113f57443" hs_bindgen_dd18b07113f57443 :: + 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:602:5@ + +__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_dd18b07113f57443 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_25c1bc0490dd3b58" hs_bindgen_25c1bc0490dd3b58 :: + 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:608:5@ + +__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_25c1bc0490dd3b58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_a1537846f970b656" hs_bindgen_a1537846f970b656 :: + 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:613: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_a1537846f970b656 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_5d990473e2d63e4d" hs_bindgen_5d990473e2d63e4d :: + 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:623:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_5d990473e2d63e4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_63f263d629b14124" hs_bindgen_63f263d629b14124 :: + 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:628: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_63f263d629b14124 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_f5bc760c2bc1507c" hs_bindgen_f5bc760c2bc1507c :: + 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:633: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_f5bc760c2bc1507c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_00e709549bcdedf7" hs_bindgen_00e709549bcdedf7 :: + 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_00e709549bcdedf7 + +{-| + + 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:660: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_00e709549bcdedf7 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_c1d2a43f9fa7c224" hs_bindgen_c1d2a43f9fa7c224 :: + 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:672:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_c1d2a43f9fa7c224 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_d23815112c1b147c" hs_bindgen_d23815112c1b147c :: + 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:678:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_d23815112c1b147c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_33319187f7a52850" hs_bindgen_33319187f7a52850 :: + 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_33319187f7a52850 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:697: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_33319187f7a52850 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_9d5c67583b1ebca3" hs_bindgen_9d5c67583b1ebca3 :: + 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_9d5c67583b1ebca3 + +{-| 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:730: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_9d5c67583b1ebca3 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_6c989081813aa1d6" hs_bindgen_6c989081813aa1d6 :: + 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_6c989081813aa1d6 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:754: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_6c989081813aa1d6 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_28ad1727c6bbcd9d" hs_bindgen_28ad1727c6bbcd9d :: + 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_28ad1727c6bbcd9d + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:781: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_28ad1727c6bbcd9d x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_e3e34e1e295aaa90" hs_bindgen_e3e34e1e295aaa90 :: + 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_e3e34e1e295aaa90 + +{-| 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:800: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_e3e34e1e295aaa90 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_c9fd3b512bc780a5" hs_bindgen_c9fd3b512bc780a5 :: + 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_c9fd3b512bc780a5 + +{-| 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:823: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_c9fd3b512bc780a5 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_7_1_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_676ad448f13bae35" hs_bindgen_676ad448f13bae35 :: + 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:841: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_676ad448f13bae35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_f465b68205b35e83" hs_bindgen_f465b68205b35e83 :: + 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:847: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_f465b68205b35e83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_10e5c8e29e90c367" hs_bindgen_10e5c8e29e90c367 :: + 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:853: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_10e5c8e29e90c367 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_bfc53b79c542c648" hs_bindgen_bfc53b79c542c648 :: + 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_bfc53b79c542c648 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:858: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_bfc53b79c542c648 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_484b23bd6e777485" hs_bindgen_484b23bd6e777485 :: + 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:864: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_484b23bd6e777485 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_8a252767f1d5b306" hs_bindgen_8a252767f1d5b306 :: + 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_8a252767f1d5b306 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:870: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_8a252767f1d5b306 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_e95bc331c06f45df" hs_bindgen_e95bc331c06f45df :: + 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_e95bc331c06f45df + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:876: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_e95bc331c06f45df x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_e8105704ea45f0a7" hs_bindgen_e8105704ea45f0a7 :: + 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:884: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_e8105704ea45f0a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_aba2ac30506e8024" hs_bindgen_aba2ac30506e8024 :: + 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:894: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_aba2ac30506e8024 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_809b823e0984dd83" hs_bindgen_809b823e0984dd83 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:907: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_809b823e0984dd83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_add649ce9eb49be2" hs_bindgen_add649ce9eb49be2 :: + 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:913:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_add649ce9eb49be2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_d199c3963a9406b3" hs_bindgen_d199c3963a9406b3 :: + 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:918: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_d199c3963a9406b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_f0d598267bcfe0e4" hs_bindgen_f0d598267bcfe0e4 :: + 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:923:28@ + +__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_f0d598267bcfe0e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_68a322b42531c146" hs_bindgen_68a322b42531c146 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:928:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_68a322b42531c146 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_0af86acbb7225d78" hs_bindgen_0af86acbb7225d78 :: + 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:933: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_0af86acbb7225d78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_dabd97482ff17d90" hs_bindgen_dabd97482ff17d90 :: + 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:938: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_dabd97482ff17d90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_78fa95f4758b94b3" hs_bindgen_78fa95f4758b94b3 :: + 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:943: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_78fa95f4758b94b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_a158eec12305fc54" hs_bindgen_a158eec12305fc54 :: + 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:949: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_a158eec12305fc54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_d021c464dbdb7930" hs_bindgen_d021c464dbdb7930 :: + 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:954: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_d021c464dbdb7930 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_80208be7d7fbd764" hs_bindgen_80208be7d7fbd764 :: + 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:959: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_80208be7d7fbd764 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_0b0ceb8f9a1b7228" hs_bindgen_0b0ceb8f9a1b7228 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:964: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_0b0ceb8f9a1b7228 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_9b7855fc42122662" hs_bindgen_9b7855fc42122662 :: + 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_9b7855fc42122662 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:969: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_9b7855fc42122662 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_70df49348f7307a3" hs_bindgen_70df49348f7307a3 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:974: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_70df49348f7307a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_4fae69da7bba244c" hs_bindgen_4fae69da7bba244c :: + 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:981: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_4fae69da7bba244c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_0dc9625df6224d05" hs_bindgen_0dc9625df6224d05 :: + 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:986: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_0dc9625df6224d05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_ce7d10bc0d7ca574" hs_bindgen_ce7d10bc0d7ca574 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:988: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_ce7d10bc0d7ca574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_eec41c5dc7c6a006" hs_bindgen_eec41c5dc7c6a006 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:990: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_eec41c5dc7c6a006 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_9a6d228cba81d044" hs_bindgen_9a6d228cba81d044 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:992: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_9a6d228cba81d044 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_50fcc51a7dcfd97c" hs_bindgen_50fcc51a7dcfd97c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:993: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_50fcc51a7dcfd97c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_10378698063a539f" hs_bindgen_10378698063a539f :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:995: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_10378698063a539f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_d154db2928289bc2" hs_bindgen_d154db2928289bc2 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:996: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_d154db2928289bc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_31e01ad933196d40" hs_bindgen_31e01ad933196d40 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:998: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_31e01ad933196d40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_11922ba3f68d05f6" hs_bindgen_11922ba3f68d05f6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:999: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_11922ba3f68d05f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_5cbd5d2bd563474d" hs_bindgen_5cbd5d2bd563474d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1000: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_5cbd5d2bd563474d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_fdcdd674ab77c2f6" hs_bindgen_fdcdd674ab77c2f6 :: + 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:1003: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_fdcdd674ab77c2f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_3fb55225ed027e2e" hs_bindgen_3fb55225ed027e2e :: + 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:1006: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_3fb55225ed027e2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_573149bcdf58216e" hs_bindgen_573149bcdf58216e :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1013: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_573149bcdf58216e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_e58267f2e2b977d4" hs_bindgen_e58267f2e2b977d4 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1020: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_e58267f2e2b977d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_749852cacb258849" hs_bindgen_749852cacb258849 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1025: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_749852cacb258849 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_db9423e15cf62eec" hs_bindgen_db9423e15cf62eec :: + 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:1029: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_db9423e15cf62eec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_a30b3f6f18b7df62" hs_bindgen_a30b3f6f18b7df62 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1031: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_a30b3f6f18b7df62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_51faa6afeed3ee56" hs_bindgen_51faa6afeed3ee56 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1032: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_51faa6afeed3ee56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_c66bef0b81dcff9a" hs_bindgen_c66bef0b81dcff9a :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1034: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_c66bef0b81dcff9a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_4da041b95bc024b8" hs_bindgen_4da041b95bc024b8 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1036: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_4da041b95bc024b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_6effdaf16108d02e" hs_bindgen_6effdaf16108d02e :: + 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:1039: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_6effdaf16108d02e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_35edf6353919ea8d" hs_bindgen_35edf6353919ea8d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1041: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_35edf6353919ea8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_6781069c304d4e2c" hs_bindgen_6781069c304d4e2c :: + 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:1048: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_6781069c304d4e2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_eb35381291bfcd5f" hs_bindgen_eb35381291bfcd5f :: + 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:1055: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_eb35381291bfcd5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_027f1f2c9430dcb3" hs_bindgen_027f1f2c9430dcb3 :: + 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:1060: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_027f1f2c9430dcb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_b69c8be618ecc313" hs_bindgen_b69c8be618ecc313 :: + 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:1065: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_b69c8be618ecc313 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_45a0c91e6b99de3c" hs_bindgen_45a0c91e6b99de3c :: + 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:1083: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_45a0c91e6b99de3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_6fc2955570ec382d" hs_bindgen_6fc2955570ec382d :: + 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:1094: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_6fc2955570ec382d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_9712fa88c6445629" hs_bindgen_9712fa88c6445629 :: + 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:1110: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_9712fa88c6445629 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_6dce79628216b9cf" hs_bindgen_6dce79628216b9cf :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1114: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_6dce79628216b9cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_01bb19c39cf8a951" hs_bindgen_01bb19c39cf8a951 :: + 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:1117: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_01bb19c39cf8a951 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_f5af985340b5d926" hs_bindgen_f5af985340b5d926 :: + 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:1119: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_f5af985340b5d926 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_733a9690e31e3860" hs_bindgen_733a9690e31e3860 :: + 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:1121: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_733a9690e31e3860 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_27163297f8d4a9de" hs_bindgen_27163297f8d4a9de :: + 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:1123: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_27163297f8d4a9de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_8b68d003f78fbbf2" hs_bindgen_8b68d003f78fbbf2 :: + 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:1125: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_8b68d003f78fbbf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_eae9eeaa8a46da19" hs_bindgen_eae9eeaa8a46da19 :: + 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:1145: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_eae9eeaa8a46da19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_59e890066f0ab576" hs_bindgen_59e890066f0ab576 :: + 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:1167: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_59e890066f0ab576 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_879a56e8f4c0a399" hs_bindgen_879a56e8f4c0a399 :: + 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_879a56e8f4c0a399 + +{-| 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:1175: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_879a56e8f4c0a399 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_383a703d6063bc43" hs_bindgen_383a703d6063bc43 :: + 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:1180:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_383a703d6063bc43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_ad04a2e1551f0387" hs_bindgen_ad04a2e1551f0387 :: + 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:1193: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_ad04a2e1551f0387 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_949ad173d24a1906" hs_bindgen_949ad173d24a1906 :: + 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:1198: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_949ad173d24a1906 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_d9d5e42bdd05840a" hs_bindgen_d9d5e42bdd05840a :: + 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:1203: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_d9d5e42bdd05840a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_bfc5864677d3f36c" hs_bindgen_bfc5864677d3f36c :: + 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:1208: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_bfc5864677d3f36c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_f41068b72f560881" hs_bindgen_f41068b72f560881 :: + 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:1210: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_f41068b72f560881 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_62cddeffe4841180" hs_bindgen_62cddeffe4841180 :: + 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:1217: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_62cddeffe4841180 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_71621d95f94e5e1a" hs_bindgen_71621d95f94e5e1a :: + 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:1232: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_71621d95f94e5e1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_02d3d2ab156406c9" hs_bindgen_02d3d2ab156406c9 :: + 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:1247: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_02d3d2ab156406c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_affd0340cb764ba9" hs_bindgen_affd0340cb764ba9 :: + 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:1264: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_affd0340cb764ba9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_031818d9e7465104" hs_bindgen_031818d9e7465104 :: + 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:1279: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_031818d9e7465104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_cc2014e1e30bcf69" hs_bindgen_cc2014e1e30bcf69 :: + 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:1295: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_cc2014e1e30bcf69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_978a04bf158dab66" hs_bindgen_978a04bf158dab66 :: + 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:1310: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_978a04bf158dab66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_1640624beb5cd9b1" hs_bindgen_1640624beb5cd9b1 :: + 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_1640624beb5cd9b1 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1321: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_1640624beb5cd9b1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_7f9b288371db735c" hs_bindgen_7f9b288371db735c :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1323: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_7f9b288371db735c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_36cb802920adc8c3" hs_bindgen_36cb802920adc8c3 :: + 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:1325: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_36cb802920adc8c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d68857ae341edc5a" hs_bindgen_d68857ae341edc5a :: + 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:1330: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_d68857ae341edc5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_f55cbf440e4ea714" hs_bindgen_f55cbf440e4ea714 :: + 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:1335: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_f55cbf440e4ea714 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_bae7d4a7b86b99d5" hs_bindgen_bae7d4a7b86b99d5 :: + 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:1340: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_bae7d4a7b86b99d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_d98d06788ab4b64f" hs_bindgen_d98d06788ab4b64f :: + 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:1342: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_d98d06788ab4b64f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_db3f41c4ce2c401e" hs_bindgen_db3f41c4ce2c401e :: + 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:1347: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_db3f41c4ce2c401e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_d677d631997695f0" hs_bindgen_d677d631997695f0 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1349: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_d677d631997695f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_eb8d8aa6b903d60e" hs_bindgen_eb8d8aa6b903d60e :: + 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:1352: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_eb8d8aa6b903d60e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_a647834688ac1f87" hs_bindgen_a647834688ac1f87 :: + 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:1357:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_a647834688ac1f87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b311140eba387dcd" hs_bindgen_b311140eba387dcd :: + 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:1362: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_b311140eba387dcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_fafcbc5d437ff0cf" hs_bindgen_fafcbc5d437ff0cf :: + 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:1364: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_fafcbc5d437ff0cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_8072090ac707b42c" hs_bindgen_8072090ac707b42c :: + 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:1369: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_8072090ac707b42c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_b0dea2ef8368d271" hs_bindgen_b0dea2ef8368d271 :: + 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_b0dea2ef8368d271 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1371: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_b0dea2ef8368d271 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_6ea514d2d0aab077" hs_bindgen_6ea514d2d0aab077 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1374: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_6ea514d2d0aab077 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_3683bf94cb2ec00c" hs_bindgen_3683bf94cb2ec00c :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1376: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_3683bf94cb2ec00c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_b53f4a2e49b744e3" hs_bindgen_b53f4a2e49b744e3 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1378: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_b53f4a2e49b744e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_977617544f103191" hs_bindgen_977617544f103191 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1380: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_977617544f103191 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_eccf9824c54ac518" hs_bindgen_eccf9824c54ac518 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1382: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_eccf9824c54ac518 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_d069473c397ac0ba" hs_bindgen_d069473c397ac0ba :: + 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:1385: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_d069473c397ac0ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_0bee2039f8405f05" hs_bindgen_0bee2039f8405f05 :: + 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:1387: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_0bee2039f8405f05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_76518d7880f523db" hs_bindgen_76518d7880f523db :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1390: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_76518d7880f523db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_09927992b8cf2511" hs_bindgen_09927992b8cf2511 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1392: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_09927992b8cf2511 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_d2af2b11f26973f2" hs_bindgen_d2af2b11f26973f2 :: + 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:1398: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_d2af2b11f26973f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_b3568b4d531adb5e" hs_bindgen_b3568b4d531adb5e :: + 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:1401: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_b3568b4d531adb5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_8d6acae817831ee0" hs_bindgen_8d6acae817831ee0 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1404: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_8d6acae817831ee0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_6155d7adc60cbfdc" hs_bindgen_6155d7adc60cbfdc :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1407: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_6155d7adc60cbfdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_d0d22ef5f5502350" hs_bindgen_d0d22ef5f5502350 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1409: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_d0d22ef5f5502350 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_5d0c4c9332550957" hs_bindgen_5d0c4c9332550957 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1411: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_5d0c4c9332550957 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_f99a571171bab50e" hs_bindgen_f99a571171bab50e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1413: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_f99a571171bab50e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_526678a005ce7920" hs_bindgen_526678a005ce7920 :: + 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:1428: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_526678a005ce7920 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_1bfbb0ebda00a2b8" hs_bindgen_1bfbb0ebda00a2b8 :: + 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:1442: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_1bfbb0ebda00a2b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_dfda5f8fa0c938a1" hs_bindgen_dfda5f8fa0c938a1 :: + 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:1460: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_dfda5f8fa0c938a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_5b11d457e8ca6a29" hs_bindgen_5b11d457e8ca6a29 :: + 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:1475: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_5b11d457e8ca6a29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_8b1935ef0145c3aa" hs_bindgen_8b1935ef0145c3aa :: + 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_8b1935ef0145c3aa + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1481: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_8b1935ef0145c3aa x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_d6415030779a7939" hs_bindgen_d6415030779a7939 :: + 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_d6415030779a7939 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1483: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_d6415030779a7939 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_3055128927ee8cb4" hs_bindgen_3055128927ee8cb4 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1485: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_3055128927ee8cb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f886e853b7b14fe2" hs_bindgen_f886e853b7b14fe2 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1487: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_f886e853b7b14fe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_4f8c4ac82dd30802" hs_bindgen_4f8c4ac82dd30802 :: + 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_4f8c4ac82dd30802 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1493: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_4f8c4ac82dd30802 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_e7653d92fd413060" hs_bindgen_e7653d92fd413060 :: + 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_e7653d92fd413060 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1495: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_e7653d92fd413060 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_95f52890655baa59" hs_bindgen_95f52890655baa59 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1497: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_95f52890655baa59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_d80189b0291efe7c" hs_bindgen_d80189b0291efe7c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1499: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_d80189b0291efe7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_17a0d652991fcd63" hs_bindgen_17a0d652991fcd63 :: + 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_17a0d652991fcd63 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1505: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_17a0d652991fcd63 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_6dc7af5454d01b19" hs_bindgen_6dc7af5454d01b19 :: + 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_6dc7af5454d01b19 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1507: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_6dc7af5454d01b19 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_88220b9db472a4bf" hs_bindgen_88220b9db472a4bf :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1509: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_88220b9db472a4bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_fd34a91f710b6802" hs_bindgen_fd34a91f710b6802 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1511: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_fd34a91f710b6802 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_a3daa83b1224616a" hs_bindgen_a3daa83b1224616a :: + 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_a3daa83b1224616a + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1517: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_a3daa83b1224616a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_cdeb563b0e0745cb" hs_bindgen_cdeb563b0e0745cb :: + 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_cdeb563b0e0745cb + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1519: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_cdeb563b0e0745cb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_e5b0fad14c7c989b" hs_bindgen_e5b0fad14c7c989b :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1521: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_e5b0fad14c7c989b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3164022ceda791da" hs_bindgen_3164022ceda791da :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1523: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_3164022ceda791da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_2fc5dd5bbf038232" hs_bindgen_2fc5dd5bbf038232 :: + 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_2fc5dd5bbf038232 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1530: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_2fc5dd5bbf038232 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_5016d74203e65753" hs_bindgen_5016d74203e65753 :: + 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_5016d74203e65753 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1533: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_5016d74203e65753 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_c5aa2ba1721f6b88" hs_bindgen_c5aa2ba1721f6b88 :: + 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_c5aa2ba1721f6b88 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1539: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_c5aa2ba1721f6b88 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_964eb64890f59d08" hs_bindgen_964eb64890f59d08 :: + 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_964eb64890f59d08 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1541: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_964eb64890f59d08 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_282e358e9367a80d" hs_bindgen_282e358e9367a80d :: + 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:1545: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_282e358e9367a80d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_114504ea01e6fa86" hs_bindgen_114504ea01e6fa86 :: + 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:1549: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_114504ea01e6fa86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_83f1904f43813db3" hs_bindgen_83f1904f43813db3 :: + 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_83f1904f43813db3 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1556: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_83f1904f43813db3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_db3747bb0e797d93" hs_bindgen_db3747bb0e797d93 :: + 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_db3747bb0e797d93 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1559: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_db3747bb0e797d93 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_9536a1b470ae549d" hs_bindgen_9536a1b470ae549d :: + 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_9536a1b470ae549d + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1566: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_9536a1b470ae549d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_00a75a16557c2910" hs_bindgen_00a75a16557c2910 :: + 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_00a75a16557c2910 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1572: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_00a75a16557c2910 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_80f9ac71419c9dbb" hs_bindgen_80f9ac71419c9dbb :: + 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_80f9ac71419c9dbb + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1582: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_80f9ac71419c9dbb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_fcfd653a26161cd2" hs_bindgen_fcfd653a26161cd2 :: + 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_fcfd653a26161cd2 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1585: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_fcfd653a26161cd2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_7432893c5317369e" hs_bindgen_7432893c5317369e :: + 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_7432893c5317369e + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1592: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_7432893c5317369e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_87022ea5b8d0a048" hs_bindgen_87022ea5b8d0a048 :: + 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_87022ea5b8d0a048 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1595: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_87022ea5b8d0a048 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_cb570f60fa22e7b1" hs_bindgen_cb570f60fa22e7b1 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1601: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_cb570f60fa22e7b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_3b4f7991dca1c1f0" hs_bindgen_3b4f7991dca1c1f0 :: + 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:1604: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_3b4f7991dca1c1f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_fedb2dd8848e5dca" hs_bindgen_fedb2dd8848e5dca :: + 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:1607: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_fedb2dd8848e5dca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_a1a3505adf5d733d" hs_bindgen_a1a3505adf5d733d :: + 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:1610: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_a1a3505adf5d733d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_5cc7de7a808a04a3" hs_bindgen_5cc7de7a808a04a3 :: + 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:1613: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_5cc7de7a808a04a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_ae3d2c9240d6e469" hs_bindgen_ae3d2c9240d6e469 :: + 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:1616: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_ae3d2c9240d6e469 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_9b79f703f145fce6" hs_bindgen_9b79f703f145fce6 :: + 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:1619: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_9b79f703f145fce6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_625e121bfefa1064" hs_bindgen_625e121bfefa1064 :: + 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:1623: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_625e121bfefa1064 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_f7676da44cfe7ab4" hs_bindgen_f7676da44cfe7ab4 :: + 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:1627: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_f7676da44cfe7ab4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_5fdd4e35a1854746" hs_bindgen_5fdd4e35a1854746 :: + 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:1630: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_5fdd4e35a1854746 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_967b0b7d7d3e302e" hs_bindgen_967b0b7d7d3e302e :: + 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:1637: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_967b0b7d7d3e302e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_55da2132c05757ae" hs_bindgen_55da2132c05757ae :: + 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:1645: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_55da2132c05757ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_e3e3f83943a07e73" hs_bindgen_e3e3f83943a07e73 :: + 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:1650: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_e3e3f83943a07e73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_dd3d37e68ab1b156" hs_bindgen_dd3d37e68ab1b156 :: + 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:1653: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_dd3d37e68ab1b156 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_9aa626a6fc2d166b" hs_bindgen_9aa626a6fc2d166b :: + 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_9aa626a6fc2d166b + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1656: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_9aa626a6fc2d166b x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_9c9da4a30936bd37" hs_bindgen_9c9da4a30936bd37 :: + 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:1669: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_9c9da4a30936bd37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_264d1acb2a08a13a" hs_bindgen_264d1acb2a08a13a :: + 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:1674: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_264d1acb2a08a13a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_01486a8e5883121d" hs_bindgen_01486a8e5883121d :: + 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:1677: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_01486a8e5883121d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_9725b831295179cd" hs_bindgen_9725b831295179cd :: + 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_9725b831295179cd + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1680: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_9725b831295179cd x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_7fc4e676079863a0" hs_bindgen_7fc4e676079863a0 :: + 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:1692: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_7fc4e676079863a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_eeb98b3e9a2bb40f" hs_bindgen_eeb98b3e9a2bb40f :: + 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:1697: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_eeb98b3e9a2bb40f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_260dcbbf28d89082" hs_bindgen_260dcbbf28d89082 :: + 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:1699: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_260dcbbf28d89082 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_8b138b0bfec557a4" hs_bindgen_8b138b0bfec557a4 :: + 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_8b138b0bfec557a4 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1701: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_8b138b0bfec557a4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_98a0fabcc3f15df8" hs_bindgen_98a0fabcc3f15df8 :: + 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:1704: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_98a0fabcc3f15df8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_19e039cc1e42db56" hs_bindgen_19e039cc1e42db56 :: + 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:1712: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_19e039cc1e42db56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_360970da3bda2e46" hs_bindgen_360970da3bda2e46 :: + 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:1720: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_360970da3bda2e46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_efdb50ecf8be5eec" hs_bindgen_efdb50ecf8be5eec :: + 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_efdb50ecf8be5eec + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1722: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_efdb50ecf8be5eec x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_9efb62fa758f98b8" hs_bindgen_9efb62fa758f98b8 :: + 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_9efb62fa758f98b8 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1723: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_9efb62fa758f98b8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_e1616479210c5c45" hs_bindgen_e1616479210c5c45 :: + 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:1731: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_e1616479210c5c45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_6808f7959a70fd7e" hs_bindgen_6808f7959a70fd7e :: + 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:1736: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_6808f7959a70fd7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_d245830fc5f302c4" hs_bindgen_d245830fc5f302c4 :: + 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:1738: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_d245830fc5f302c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_c9286d21446d6030" hs_bindgen_c9286d21446d6030 :: + 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:1741: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_c9286d21446d6030 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_cfef9c911341bb5e" hs_bindgen_cfef9c911341bb5e :: + 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:1743: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_cfef9c911341bb5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_0e6ef6c02f380a57" hs_bindgen_0e6ef6c02f380a57 :: + 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_0e6ef6c02f380a57 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1746: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_0e6ef6c02f380a57 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_6d83fa7bd6774435" hs_bindgen_6d83fa7bd6774435 :: + 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:1760: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_6d83fa7bd6774435 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_5f9122c2860b9727" hs_bindgen_5f9122c2860b9727 :: + 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:1765: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_5f9122c2860b9727 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_7844768138822741" hs_bindgen_7844768138822741 :: + 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:1768: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_7844768138822741 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_ff0bd4ef91ad5795" hs_bindgen_ff0bd4ef91ad5795 :: + 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:1773: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_ff0bd4ef91ad5795 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_a5fb567e5cacbddd" hs_bindgen_a5fb567e5cacbddd :: + 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_a5fb567e5cacbddd + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1777: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_a5fb567e5cacbddd x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_426ef89ffedfe8a8" hs_bindgen_426ef89ffedfe8a8 :: + 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:1790: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_426ef89ffedfe8a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_2867f9b1b747163f" hs_bindgen_2867f9b1b747163f :: + 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:1795: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_2867f9b1b747163f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_6a15bd5de972be33" hs_bindgen_6a15bd5de972be33 :: + 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:1798: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_6a15bd5de972be33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_5e122b926f01e247" hs_bindgen_5e122b926f01e247 :: + 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_5e122b926f01e247 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1803: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_5e122b926f01e247 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_6fa7fde2ae6e0b32" hs_bindgen_6fa7fde2ae6e0b32 :: + 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:1816: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_6fa7fde2ae6e0b32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_d413096efa511cd9" hs_bindgen_d413096efa511cd9 :: + 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_d413096efa511cd9 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1823: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_d413096efa511cd9 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_0d305b33c905aedc" hs_bindgen_0d305b33c905aedc :: + 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_0d305b33c905aedc + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1838: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_0d305b33c905aedc x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_edf29fff19d862fc" hs_bindgen_edf29fff19d862fc :: + 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_edf29fff19d862fc + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1853: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_edf29fff19d862fc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_2ea4bb5b8a6c4636" hs_bindgen_2ea4bb5b8a6c4636 :: + 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:1854: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_2ea4bb5b8a6c4636 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_2631f1e14753c547" hs_bindgen_2631f1e14753c547 :: + 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:1859: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_2631f1e14753c547 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_e00b7fa2ae7ab170" hs_bindgen_e00b7fa2ae7ab170 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1861: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_e00b7fa2ae7ab170 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_f1152bb24e9220e1" hs_bindgen_f1152bb24e9220e1 :: + 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:1864: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_f1152bb24e9220e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_439580a0e69b07bf" hs_bindgen_439580a0e69b07bf :: + 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:1865: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_439580a0e69b07bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_79eee64f12e3fb60" hs_bindgen_79eee64f12e3fb60 :: + 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:1867: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_79eee64f12e3fb60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_88448ee86294976d" hs_bindgen_88448ee86294976d :: + 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:1868: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_88448ee86294976d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_5a8d965bc46b2ba3" hs_bindgen_5a8d965bc46b2ba3 :: + 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:1871: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_5a8d965bc46b2ba3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_70d6270da1385eac" hs_bindgen_70d6270da1385eac :: + 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:1873: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_70d6270da1385eac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_3c54b2b3ca96ebe1" hs_bindgen_3c54b2b3ca96ebe1 :: + 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:1874: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_3c54b2b3ca96ebe1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_4535e47294c83033" hs_bindgen_4535e47294c83033 :: + 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:1875: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_4535e47294c83033 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_dfc31569f0a5391b" hs_bindgen_dfc31569f0a5391b :: + 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:1877: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_dfc31569f0a5391b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_0c910de46db2493a" hs_bindgen_0c910de46db2493a :: + 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:1880: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_0c910de46db2493a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_f1b2a0ee414d05db" hs_bindgen_f1b2a0ee414d05db :: + 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:1882: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_f1b2a0ee414d05db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_155f075af034695f" hs_bindgen_155f075af034695f :: + 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:1885: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_155f075af034695f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_ccdbcf6cbf18d5bd" hs_bindgen_ccdbcf6cbf18d5bd :: + 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:1889: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_ccdbcf6cbf18d5bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_7c0774e79e9dbf28" hs_bindgen_7c0774e79e9dbf28 :: + 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:1892: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_7c0774e79e9dbf28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_c485ee12dc01fd45" hs_bindgen_c485ee12dc01fd45 :: + 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:1895: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_c485ee12dc01fd45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_33e627285846d13d" hs_bindgen_33e627285846d13d :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1911: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_33e627285846d13d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_f18e1fe3b6cc9907" hs_bindgen_f18e1fe3b6cc9907 :: + 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:1917: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_f18e1fe3b6cc9907 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_9c621549f78426ea" hs_bindgen_9c621549f78426ea :: + 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:1928: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_9c621549f78426ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_788abdb11aa25976" hs_bindgen_788abdb11aa25976 :: + 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:1943: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_788abdb11aa25976 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_d0725ac9903e7123" hs_bindgen_d0725ac9903e7123 :: + 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:1951: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_d0725ac9903e7123 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_59ae69217a341fc8" hs_bindgen_59ae69217a341fc8 :: + 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_59ae69217a341fc8 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1953: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_59ae69217a341fc8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_9af9522371f199a8" hs_bindgen_9af9522371f199a8 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1955: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_9af9522371f199a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_ae22d1170bdfa605" hs_bindgen_ae22d1170bdfa605 :: + 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:1961: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_ae22d1170bdfa605 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_563421f286251654" hs_bindgen_563421f286251654 :: + 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:1968: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_563421f286251654 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_6c0e116573cf58a3" hs_bindgen_6c0e116573cf58a3 :: + 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_6c0e116573cf58a3 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1986: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_6c0e116573cf58a3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_eaadb4586f9c1b1c" hs_bindgen_eaadb4586f9c1b1c :: + 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_eaadb4586f9c1b1c + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1995: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_eaadb4586f9c1b1c (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_225f49d2217adc5b" hs_bindgen_225f49d2217adc5b :: + 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_225f49d2217adc5b + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2003: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_225f49d2217adc5b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_5288e1ed94109224" hs_bindgen_5288e1ed94109224 :: + 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_5288e1ed94109224 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2013: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_5288e1ed94109224 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b94491ff933fa3e5" hs_bindgen_b94491ff933fa3e5 :: + 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_b94491ff933fa3e5 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2032: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_b94491ff933fa3e5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_8507f789dc3df0b7" hs_bindgen_8507f789dc3df0b7 :: + 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:2039:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_8507f789dc3df0b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_2b2cf2371d33f8ea" hs_bindgen_2b2cf2371d33f8ea :: + 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:2045: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_2b2cf2371d33f8ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_efc3ec3a97198601" hs_bindgen_efc3ec3a97198601 :: + 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:2051: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_efc3ec3a97198601 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_06fa88f14652efa8" hs_bindgen_06fa88f14652efa8 :: + 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_06fa88f14652efa8 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2064: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_06fa88f14652efa8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_64193e662bb6c356" hs_bindgen_64193e662bb6c356 :: + 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:2072:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_64193e662bb6c356 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_bb25d9fedbd69a51" hs_bindgen_bb25d9fedbd69a51 :: + 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:2081: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_bb25d9fedbd69a51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_76096eb9f3759ea9" hs_bindgen_76096eb9f3759ea9 :: + 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:2092: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_76096eb9f3759ea9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_9b2a35d2765df1c9" hs_bindgen_9b2a35d2765df1c9 :: + 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_9b2a35d2765df1c9 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2103: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_9b2a35d2765df1c9 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_04773d1968306c03" hs_bindgen_04773d1968306c03 :: + 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:2110:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_04773d1968306c03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_2ecc131d593295cc" hs_bindgen_2ecc131d593295cc :: + 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_2ecc131d593295cc + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2113: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_2ecc131d593295cc x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_c50bccfc9e42d8a3" hs_bindgen_c50bccfc9e42d8a3 :: + 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_c50bccfc9e42d8a3 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2116: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_c50bccfc9e42d8a3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_ad7c2b52523f345e" hs_bindgen_ad7c2b52523f345e :: + 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:2128: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_ad7c2b52523f345e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_9440d00796ec3862" hs_bindgen_9440d00796ec3862 :: + 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:2136: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_9440d00796ec3862 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_9a3225d29e9ca556" hs_bindgen_9a3225d29e9ca556 :: + 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_9a3225d29e9ca556 + +{-| 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:2151: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_9a3225d29e9ca556 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_cc4de970844b73b0" hs_bindgen_cc4de970844b73b0 :: + 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_cc4de970844b73b0 + +{-| 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:2170: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_cc4de970844b73b0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_f77de4d41fd10957" hs_bindgen_f77de4d41fd10957 :: + 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_f77de4d41fd10957 + +{-| 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:2186: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_f77de4d41fd10957 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_7f12af696782f032" hs_bindgen_7f12af696782f032 :: + 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_7f12af696782f032 + +{-| 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:2213: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_7f12af696782f032 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_7_1_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_48f7221fa52a9f71" hs_bindgen_48f7221fa52a9f71 :: + 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:2231: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_48f7221fa52a9f71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_334f51f375fed8e5" hs_bindgen_334f51f375fed8e5 :: + 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:2252: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_334f51f375fed8e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_a2153bf47736547e" hs_bindgen_a2153bf47736547e :: + 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:2273: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_a2153bf47736547e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_6c4ef8664d49ce69" hs_bindgen_6c4ef8664d49ce69 :: + 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:2298:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_6c4ef8664d49ce69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_e0fe51a956b12bdb" hs_bindgen_e0fe51a956b12bdb :: + 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:2306: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_e0fe51a956b12bdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_7919b53b9e092909" hs_bindgen_7919b53b9e092909 :: + 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:2316: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_7919b53b9e092909 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_dca83794ba6702da" hs_bindgen_dca83794ba6702da :: + 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:2327: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_dca83794ba6702da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_c29ad220c1063ad2" hs_bindgen_c29ad220c1063ad2 :: + 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:2339: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_c29ad220c1063ad2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_ba772eff1e918d8f" hs_bindgen_ba772eff1e918d8f :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2346: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_ba772eff1e918d8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_d128633db48f712c" hs_bindgen_d128633db48f712c :: + 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:2360: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_d128633db48f712c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_2a74fb05086cec47" hs_bindgen_2a74fb05086cec47 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2372: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_2a74fb05086cec47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_f74dd248259c0274" hs_bindgen_f74dd248259c0274 :: + 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:2383: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_f74dd248259c0274 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_32e4623afcb30e5b" hs_bindgen_32e4623afcb30e5b :: + 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:2395: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_32e4623afcb30e5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_7_1_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_e16b2251f6d7caa8" hs_bindgen_e16b2251f6d7caa8 :: + 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:2402: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_e16b2251f6d7caa8 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0.hs new file mode 100644 index 00000000..5296fdbf --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0.hs @@ -0,0 +1,1705 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_8_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:70:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20250506 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:112: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 + +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:113: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:115: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:117: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:118: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:119: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:121: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:122: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:124: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:125: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:126: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:127: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:129: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:130: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:131: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:132: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:133: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:134: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:136: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:137: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:139: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:140: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:141: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:142: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:144: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:150: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' + +__defined at:__ @botan\/ffi.h:159:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:159: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:168:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:168: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:245:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:287:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:287: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:379:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:379: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:459:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:459: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:555:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:555: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:557: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:558: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:559: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:652: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:853:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:853: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:919:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:919: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:__ @botan_asn1_oid_struct@ + + __defined at:__ @botan\/ffi.h:1117:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_asn1_oid_struct + +{-| __C declaration:__ @botan_asn1_oid_t@ + + __defined at:__ @botan\/ffi.h:1117: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:__ @botan_ec_group_struct@ + + __defined at:__ @botan\/ffi.h:1166:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_ec_group_struct + +{-| __C declaration:__ @botan_ec_group_t@ + + __defined at:__ @botan\/ffi.h:1166: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1300:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1300: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:1323: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:1393: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:1394: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:1395:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1533:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1533: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1894:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1894: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1918:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1918: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:1939:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1941:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1941: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1961:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1961: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1980:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1980: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:2009: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:2009: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:2039: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:2039: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:2103:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:2103: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:2150: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 + +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:2151: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:2152: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:2153: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:2154: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:2155: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:2156: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:2157: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:2158: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:2159: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:2160: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:2201:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:2201: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2278:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2278: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2310:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2310: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2350:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2350: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:2352: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2373: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:2373: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2531:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2531: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2536:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2536: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:__ @botan_tpm2_crypto_backend_state_struct@ + + __defined at:__ @botan\/ffi.h:2541: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:2541: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:__ @ESYS_CONTEXT@ + + __defined at:__ @botan\/ffi.h:2543: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_8_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/FunPtr.hs new file mode 100644 index 00000000..356c3e79 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/FunPtr.hs @@ -0,0 +1,10184 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_8_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_8_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_8_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_eaf1fc774c2d735f (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_24d6617575cd0555 (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_133b93c6b488880d (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e8f9b8c049717e1 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_59037e288491c9f7 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_46876d10b95f59bc (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_9da261fc3757be2f (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_6191877ec64431ee (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_926b1bf555298de4 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3690b23b2d378434 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8c0ed6e9ddd2548 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_839f337188efc6d1 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52748fe8b1164d97 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6328bf30be9e371a (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bbade162e7eb08a (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a733a4289075cfa2 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0657904db9333d7d (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbf1d5b3fd62d52a (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_8_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff8e3bf621d90902 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8c2f90db3bd7571b (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36ac501c7f66aba7 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f62ec7f82c0a0d78 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca8e9681223de60e (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eff33d0c23508371 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1dd483fd4c0866d8 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06257c3f0d672e17 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fca0726c6cc8d4f (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4af09dfc64d6ded0 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d746f32b8b25af6 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58fe578b36de5ba5 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b45691affdc4419 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c125490f758cb04 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96f23d2947a48b81 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb464913a3f114ab (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4a6994f6cb7e423 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a080c668e2514795 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_165720242ffc85cb (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5193650ef9c7c8e4 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92ea204e89f410dd (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1f45f0327f94352 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29932f5d7705bad2 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9acb01e4c0c93def (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_8_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70e22d956c3f694a (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27f9775b45dad899 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_acf7f7633c2b3177 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23beb5612dff5bcd (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ab2ded4410a40df (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14d96c599ffbd06c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_048fbfbb7faa7365 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5331222b50495dc2 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e76b42c4174e2fa4 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2876cfea91985aa9 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dd70a04a602c2f58 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_149aff65e21f93cf (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8bf4e7f017556fc (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_8_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95e29a872e42682c (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1830ee8c227d9a8e (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a62413152a0dc8d (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_85d8d2c7315b78b8 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83f1b9dbb43a34bf (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_8_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf4b44438477f4e8 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_564695217854764b (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b41c4a2a229ff92 (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_8_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7dc866d252101eda (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_8_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf8bb066d9e9874c (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_8_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c751e1585b58bc7b (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_8_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3255e161de8e3e25 (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_8_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a57fb9460268f94d (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_8_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9bbc5ba7a39290fe (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ecaf0335057766c (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_088294a15ad2f3e8 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3cce6c046b38785 (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_8_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bea308b6a38ad2ed (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bc076d69f274392 (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_8_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_40ce72bd99fba7ba (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_8_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cea312bf82ac9da7 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e441bc4744ac5ea (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_8_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3ea43f36ecee00e (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b0755dcba4f582c0 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e423ff623e834c5 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03ae1d84d9daa310 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4277fb59195df2a1 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf5adf1d5ea74918 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb616585009995e6 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8024ffd2915162b1 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86a39baaaf755a8f (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca0bb30809e2be27 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4558cb6bb18d7d9 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_306a9bd0d84a29bf (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2ec15f62745f6ec (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31fcddba1f83896c (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a4c7fa35252b01d (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da81508977e73b5c (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b089bff80174b805 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_42c74a15822a9850 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_729219b4781940ac (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6534e4d48e30f6a0 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bbb8490795fd5b4d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c9854427e6a9308 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1ff84979930347c (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f31a83fddb33c77a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64bbbbbc1e8170cd (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e8e6f73f3c884df (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_8_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a1675126d8f103f (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_8_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_951132df5d9a83a5 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11f414e5c2c4113c (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5eb244de164b1d2d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51aaeb92b531c8ef (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_8_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9907fbbf218e585b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01886176d762acfe (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_085365bcc7bfb1dd (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5af876271b1c313 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c6c6c5b7edd77d8 (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_8_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25f3fb8af7faeeca (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ce8b5a64270b838 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e945f53d4ff6943b (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8278f2beec848f9 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3291e20ccfcbb3e4 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6030b0e60703f5d1 (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_8_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a9631fddd6662fb (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54e13e751897d38d (void)) (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return &botan_oid_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_from_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be922641f5ab2931 (void)) (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_from_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_register */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94afd6c8a8ddfb71 (void)) (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_register;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_view_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba7206cf8818311b (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_8_0_get_botan_oid_view_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6cc863ffde03258d (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_8_0_get_botan_oid_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_203018a962670bac (void)) (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_oid_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e60ca740b217d87e (void)) (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return &botan_oid_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23b858c3f7c00d9e (void)) (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return &botan_ec_group_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_supports_application_specific_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e6d0935eb327170 (void)) (" + , " signed int *arg1" + , ")" + , "{" + , " return &botan_ec_group_supports_application_specific_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_supports_named_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de3f3ae807346937 (void)) (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_ec_group_supports_named_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_params */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_804171324cd7863a (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_8_0_get_botan_ec_group_from_ber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_596df216ff1921da (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_8_0_get_botan_ec_group_from_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4dbc8a48d3ce2070 (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2baf96a671f8d3c6 (void)) (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_ec_group_from_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b0e81d73343dd3c (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20f70a7699883bc5 (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_8_0_get_botan_ec_group_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3a03dc343fef301 (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_8_0_get_botan_ec_group_get_curve_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04aef2ba6fc94e63 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_curve_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_164206b58a144719 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_a */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c0269565cb373b9 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_a;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_b */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a9ce11f69b8be08 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_b;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_g_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f598b4d39543a17f (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_g_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc032cdd96fdb7ea (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_order */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a16e89d4d95efd7 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_order;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97485950e9df4711 (void)) (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96852ca0bd6cb8b6 (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_8_0_get_botan_ec_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54d0261f03cba99e (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_8_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cfc0c8ecec32a324 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a73ec4dae88946a (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5bd0a18c67ad335b (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_266f477af2151994 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a6b62cd0081d8eea (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_8_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe11d14d72a9d521 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83a06860bc3259ef (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_8_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69a314d29d026af0 (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_8_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fec8bfa977cebdb3 (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_8_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64d5cebed012d138 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa279141630080c0 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c645262e100c0b68 (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_8_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_900d1e1163e93716 (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_8_0_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff9e6b6105d8e592 (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_8_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_af52e1e63fbbd78c (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_658ade7073c41fc5 (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_8_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59b5f89f6131af00 (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_8_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00b62b57e46dc2cf (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_8_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ebc88e97c4a0f93 (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_8_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f353fb2da2f074b (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_8_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6c18597e9b6924b (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_8_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a19ddcb4344ff94a (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_8_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7d69cce20bb7580 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e380814f1d07ed7a (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ece6e1f0433ed879 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f34ac3b7c05b7acd (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_8_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de241a575b7aa77a (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_8_0_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b64bc189f8aeac5e (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_8_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4fc0c4853f33e21f (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7cc76008d62c1320 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59e39702140431d2 (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13f3768abe81239b (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c05da548fc5e98ca (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd6721506044c96e (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7318b54c22fb3098 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b198f2c5c3d3a64f (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30bdb6e7636fb152 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_stateful_operation */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b49c00fba529a168 (void)) (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_privkey_stateful_operation;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_remaining_operations */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9dd79a27887c638e (void)) (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_privkey_remaining_operations;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_af893d8ab7883438 (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_8_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5276c1f3d03e1825 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c53068f8aef25aba (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9156c0455bd7dbe7 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c8f3fd15bfaeacda (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7aa70e2bb040cd8c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2098e24cb5a2996 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6718c95728e08e92 (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_8_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49e99dafecdebfb1 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5376d02142c468f9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ed74c7baba17692 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e7af4caa74f66fa (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_8_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ba5675c040a6d1f (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_8_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_62ca2a16bfa931e3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0bf083f8edb94d1 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7652ced11d3390a3 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b9018accb3f16a57 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_876cbe0ae367ff42 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13717c5e8e015973 (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_8_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_adcf6d3e4d30f5d4 (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_8_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d0faf95181cc806 (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_8_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4694bd73cdc8fb9c (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_8_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c6a113721b2a891 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_513245355946a902 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c54510eaee73fd3 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50f1fe57f3083622 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fec5400975471abf (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae58134aae246e88 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f077e3445870d31b (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b38389ed49f7419 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6794653f035b7006 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f19eb3278babea2 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a0c7a6603f4d2e5 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb255826a67fb6af (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f203c2d524d80001 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4675289085d0e828 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70a4d8f14f761d50 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6f2c9679697668f (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0c5741ff627d413b (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_8_0_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81897250a33bf376 (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_8_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e67c9487ab8a873 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41fe808095553577 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_541cc05cb5517dee (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_8_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_63b4200bfa0f373a (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_8_0_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a4d2fd38e0bb693e (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_8_0_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47f56167174b4289 (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_8_0_get_botan_privkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9365580e5bfb7ac7 (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_8_0_get_botan_pubkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d463610b127ecd9b (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_8_0_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a082b1ea6fb473c1 (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_8_0_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec88beb4c0a503a8 (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_8_0_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2d011e4a95601f0 (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_8_0_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_697d476d968156f4 (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_8_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbee8cac4a81fd3b (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e4b092790da1ac3 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1af90c4772c5a0d (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_8_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90b345c03bd10e25 (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_8_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e13a9324870ec1a3 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe8827a8c3f730d4 (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_8_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3db4fd7fda6a66bd (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59e3b93905e6985c (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_8_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59afb80b5a1fd2f3 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fa339358eaadb2d (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_8_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e88894bffba5dbf9 (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_8_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fe3af6af6a39104 (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_8_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc6378baeb381c65 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abf1701942f18b5f (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_8_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10e235c6d4c3841f (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_8_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec419bdca754686d (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_8_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55b982eee17da8f9 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b166b3d529ce6299 (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_8_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cdad78a90417f5b0 (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_8_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3008e0e552e8d96 (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_8_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84ec3a157c0cb19f (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d836fa003fac9b7 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49425536309e953e (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_8_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c42050828148262 (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_8_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d94d1ca36f91bb32 (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_8_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b44393bc650cb417 (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1f29848a0d8152f (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_8_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ad217a7b9d0ac7c (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_8_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0756fa49655d214d (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_8_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c15216e6417cd539 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13e7265d4684d9ba (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_8_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7ee4e05afe64f2c (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_8_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a03b7b9fce1cb04 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d45460daef3dd11c (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_8_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83c9ddba06350be0 (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_8_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18d49fb2c74e9717 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f73d633b65faf92a (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_8_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_410a74cf8c9ef11d (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_8_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e02019779e92e3b9 (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_8_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49d120ad4c668358 (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_8_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c67fdd0c613580d (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_91db90cfc8f2d3ff (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_8_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d146cd02472c0a6b (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_8_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fdb6aa0184d789f0 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe2484149bc7cb0f (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_8_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1990c16685a77faa (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_8_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d7cd5b949cc7a96 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bd820585c509266 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_466ab2aa52a096ca (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4870eac3a9fcd5ea (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d40f74ce34cf0cb3 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f73aae17935474a (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c18391d7e1bdc9a4 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_673343ec4285e9da (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eed63f41b91f440b (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_8_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_61d235a2197553da (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_8_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b27168837fa353a (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_8_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92f6bfde86935427 (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_8_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1443fadbd185bfb4 (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_8_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f17990c243a13129 (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_8_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7a5ddd5e006a9b0 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79194a28de35939f (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_8_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e8511db52e02eea (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_8_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f1c433507d92daf (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f185b18f98e32f9 (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_8_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e86c00480d5c664 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff6b7aa95c18dbed (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8be75600bdf8711 (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_8_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_183cccd2dcde1bcd (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9018a05b41b3a22c (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_100c2a54b810ad4e (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_07148963d940de41 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_825d0a026c9fc486 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2bb5d54dc678da8 (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_8_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8df54c253b548b79 (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_8_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc20a2fc5a19a3e1 (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_8_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a59e3919cdf9963 (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_8_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84153b405e4bf147 (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_8_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68ef79d8c47ccb6f (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_8_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e1a6d0214be0922 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04668557d7f3630c (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a6f6dd2e64d00a77 (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_8_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29d391c0ef620a79 (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_8_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be5a3e0939d8e51b (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_970078832b7e01a9 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a86873c4843404c (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1afa4316f4d5d784 (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_8_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_caadd0c1ad9a442e (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_309194d3a76ee707 (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_8_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6c431cc7c3a30ea (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_8_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b739a6e5e7cc1d4 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b42ec165da9a354d (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31f6b53a2e329da1 (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_8_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68aedc642cc9dc46 (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_8_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_382fa319995e1344 (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_8_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3b83067b69e4e82 (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_8_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6624a7b01a1f3ce2 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a6c1e0d4be3187f (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_8_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe08007ef2fdf121 (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_8_0_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c02a04ff1f0f8780 (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0ad49cad140e40f5 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52d763f1ceb3041f (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_from_esys */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_382b3e4e78118c90 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_from_esys;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c03ad62eb98d895c (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4c93c18ff04cf82 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_976901a0bb4adb33 (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_8_0_get_botan_tpm2_crypto_backend_state_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45fb5dcecb2a2757 (void)) (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return &botan_tpm2_crypto_backend_state_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a64c502299aa27db (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_8_0_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c12db3dcae9bcbab (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_450b8fb521fe6ba5 (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_eaf1fc774c2d735f" hs_bindgen_eaf1fc774c2d735f :: + 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:174: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_eaf1fc774c2d735f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_24d6617575cd0555" hs_bindgen_24d6617575cd0555 :: + 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:183: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_24d6617575cd0555 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_133b93c6b488880d" hs_bindgen_133b93c6b488880d :: + 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:190: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_133b93c6b488880d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_4e8f9b8c049717e1" hs_bindgen_4e8f9b8c049717e1 :: + 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:196: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_4e8f9b8c049717e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_59037e288491c9f7" hs_bindgen_59037e288491c9f7 :: + 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:201: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_59037e288491c9f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_46876d10b95f59bc" hs_bindgen_46876d10b95f59bc :: + 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:206: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_46876d10b95f59bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_9da261fc3757be2f" hs_bindgen_9da261fc3757be2f :: + 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:211: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_9da261fc3757be2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_6191877ec64431ee" hs_bindgen_6191877ec64431ee :: + 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:216: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_6191877ec64431ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_926b1bf555298de4" hs_bindgen_926b1bf555298de4 :: + 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:223: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_926b1bf555298de4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_3690b23b2d378434" hs_bindgen_3690b23b2d378434 :: + 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:228: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_3690b23b2d378434 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_e8c0ed6e9ddd2548" hs_bindgen_e8c0ed6e9ddd2548 :: + 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:234: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_e8c0ed6e9ddd2548 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_839f337188efc6d1" hs_bindgen_839f337188efc6d1 :: + 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:240: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_839f337188efc6d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_52748fe8b1164d97" hs_bindgen_52748fe8b1164d97 :: + 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:255: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_52748fe8b1164d97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_6328bf30be9e371a" hs_bindgen_6328bf30be9e371a :: + 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:265: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_6328bf30be9e371a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_0bbade162e7eb08a" hs_bindgen_0bbade162e7eb08a :: + 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:277: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_0bbade162e7eb08a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_a733a4289075cfa2" hs_bindgen_a733a4289075cfa2 :: + 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:282: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_a733a4289075cfa2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_0657904db9333d7d" hs_bindgen_0657904db9333d7d :: + 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:301: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_0657904db9333d7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_fbf1d5b3fd62d52a" hs_bindgen_fbf1d5b3fd62d52a :: + 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:313: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_fbf1d5b3fd62d52a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_ff8e3bf621d90902" hs_bindgen_ff8e3bf621d90902 :: + 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:328: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_ff8e3bf621d90902 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_8c2f90db3bd7571b" hs_bindgen_8c2f90db3bd7571b :: + 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:337: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_8c2f90db3bd7571b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_36ac501c7f66aba7" hs_bindgen_36ac501c7f66aba7 :: + 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:347: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_36ac501c7f66aba7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_f62ec7f82c0a0d78" hs_bindgen_f62ec7f82c0a0d78 :: + 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:357: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_f62ec7f82c0a0d78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_ca8e9681223de60e" hs_bindgen_ca8e9681223de60e :: + 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:367: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_ca8e9681223de60e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_eff33d0c23508371" hs_bindgen_eff33d0c23508371 :: + 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:374: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_eff33d0c23508371 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_1dd483fd4c0866d8" hs_bindgen_1dd483fd4c0866d8 :: + 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:388: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_1dd483fd4c0866d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_06257c3f0d672e17" hs_bindgen_06257c3f0d672e17 :: + 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:396: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_06257c3f0d672e17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_6fca0726c6cc8d4f" hs_bindgen_6fca0726c6cc8d4f :: + 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:404: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_6fca0726c6cc8d4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_4af09dfc64d6ded0" hs_bindgen_4af09dfc64d6ded0 :: + 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:412: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_4af09dfc64d6ded0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_2d746f32b8b25af6" hs_bindgen_2d746f32b8b25af6 :: + 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:421: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_2d746f32b8b25af6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_58fe578b36de5ba5" hs_bindgen_58fe578b36de5ba5 :: + 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:431: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_58fe578b36de5ba5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_1b45691affdc4419" hs_bindgen_1b45691affdc4419 :: + 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:439: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_1b45691affdc4419 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_4c125490f758cb04" hs_bindgen_4c125490f758cb04 :: + 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:446: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_4c125490f758cb04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_96f23d2947a48b81" hs_bindgen_96f23d2947a48b81 :: + 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:454: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_96f23d2947a48b81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_fb464913a3f114ab" hs_bindgen_fb464913a3f114ab :: + 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:469: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_fb464913a3f114ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_a4a6994f6cb7e423" hs_bindgen_a4a6994f6cb7e423 :: + 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:477: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_a4a6994f6cb7e423 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_a080c668e2514795" hs_bindgen_a080c668e2514795 :: + 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:486: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_a080c668e2514795 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_165720242ffc85cb" hs_bindgen_165720242ffc85cb :: + 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:495: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_165720242ffc85cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_5193650ef9c7c8e4" hs_bindgen_5193650ef9c7c8e4 :: + 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:504: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_5193650ef9c7c8e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_92ea204e89f410dd" hs_bindgen_92ea204e89f410dd :: + 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:514: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_92ea204e89f410dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_a1f45f0327f94352" hs_bindgen_a1f45f0327f94352 :: + 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:522: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_a1f45f0327f94352 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_29932f5d7705bad2" hs_bindgen_29932f5d7705bad2 :: + 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:530: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_29932f5d7705bad2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_9acb01e4c0c93def" hs_bindgen_9acb01e4c0c93def :: + 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:540: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_9acb01e4c0c93def + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_70e22d956c3f694a" hs_bindgen_70e22d956c3f694a :: + 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:550: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_70e22d956c3f694a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_27f9775b45dad899" hs_bindgen_27f9775b45dad899 :: + 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:564: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_27f9775b45dad899 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_acf7f7633c2b3177" hs_bindgen_acf7f7633c2b3177 :: + 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:569: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_acf7f7633c2b3177 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_23beb5612dff5bcd" hs_bindgen_23beb5612dff5bcd :: + 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:574: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_23beb5612dff5bcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_7ab2ded4410a40df" hs_bindgen_7ab2ded4410a40df :: + 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:579: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_7ab2ded4410a40df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_14d96c599ffbd06c" hs_bindgen_14d96c599ffbd06c :: + 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:584: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_14d96c599ffbd06c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_048fbfbb7faa7365" hs_bindgen_048fbfbb7faa7365 :: + 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:589: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_048fbfbb7faa7365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_5331222b50495dc2" hs_bindgen_5331222b50495dc2 :: + 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:596: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_5331222b50495dc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_e76b42c4174e2fa4" hs_bindgen_e76b42c4174e2fa4 :: + 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:601: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_e76b42c4174e2fa4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_2876cfea91985aa9" hs_bindgen_2876cfea91985aa9 :: + 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:607: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_2876cfea91985aa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_dd70a04a602c2f58" hs_bindgen_dd70a04a602c2f58 :: + 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:613: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_dd70a04a602c2f58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_149aff65e21f93cf" hs_bindgen_149aff65e21f93cf :: + 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:619: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_149aff65e21f93cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_e8bf4e7f017556fc" hs_bindgen_e8bf4e7f017556fc :: + 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:625: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_e8bf4e7f017556fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_95e29a872e42682c" hs_bindgen_95e29a872e42682c :: + 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:630: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_95e29a872e42682c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_1830ee8c227d9a8e" hs_bindgen_1830ee8c227d9a8e :: + 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:640: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_1830ee8c227d9a8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_4a62413152a0dc8d" hs_bindgen_4a62413152a0dc8d :: + 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:645: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_4a62413152a0dc8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_85d8d2c7315b78b8" hs_bindgen_85d8d2c7315b78b8 :: + 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:650: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_85d8d2c7315b78b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_83f1b9dbb43a34bf" hs_bindgen_83f1b9dbb43a34bf :: + 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:677: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_83f1b9dbb43a34bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_bf4b44438477f4e8" hs_bindgen_bf4b44438477f4e8 :: + 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:689: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_bf4b44438477f4e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_564695217854764b" hs_bindgen_564695217854764b :: + 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:695: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_564695217854764b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_3b41c4a2a229ff92" hs_bindgen_3b41c4a2a229ff92 :: + 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:714: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_3b41c4a2a229ff92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_7dc866d252101eda" hs_bindgen_7dc866d252101eda :: + 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:747: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_7dc866d252101eda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_cf8bb066d9e9874c" hs_bindgen_cf8bb066d9e9874c :: + 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:771: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_cf8bb066d9e9874c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_c751e1585b58bc7b" hs_bindgen_c751e1585b58bc7b :: + 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:798: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_c751e1585b58bc7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_3255e161de8e3e25" hs_bindgen_3255e161de8e3e25 :: + 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:817: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_3255e161de8e3e25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_a57fb9460268f94d" hs_bindgen_a57fb9460268f94d :: + 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:840: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_a57fb9460268f94d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_9bbc5ba7a39290fe" hs_bindgen_9bbc5ba7a39290fe :: + 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:858: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_9bbc5ba7a39290fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_6ecaf0335057766c" hs_bindgen_6ecaf0335057766c :: + 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:864: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_6ecaf0335057766c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_088294a15ad2f3e8" hs_bindgen_088294a15ad2f3e8 :: + 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:870: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_088294a15ad2f3e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_b3cce6c046b38785" hs_bindgen_b3cce6c046b38785 :: + 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:875: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_b3cce6c046b38785 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_bea308b6a38ad2ed" hs_bindgen_bea308b6a38ad2ed :: + 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:881: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_bea308b6a38ad2ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_7bc076d69f274392" hs_bindgen_7bc076d69f274392 :: + 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:887: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_7bc076d69f274392 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_40ce72bd99fba7ba" hs_bindgen_40ce72bd99fba7ba :: + 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:893: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_40ce72bd99fba7ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_cea312bf82ac9da7" hs_bindgen_cea312bf82ac9da7 :: + 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:901: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_cea312bf82ac9da7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_9e441bc4744ac5ea" hs_bindgen_9e441bc4744ac5ea :: + 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:911: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_9e441bc4744ac5ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_e3ea43f36ecee00e" hs_bindgen_e3ea43f36ecee00e :: + 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:924: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_e3ea43f36ecee00e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_b0755dcba4f582c0" hs_bindgen_b0755dcba4f582c0 :: + 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:930: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_b0755dcba4f582c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_1e423ff623e834c5" hs_bindgen_1e423ff623e834c5 :: + 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:935: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_1e423ff623e834c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_03ae1d84d9daa310" hs_bindgen_03ae1d84d9daa310 :: + 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:940: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_03ae1d84d9daa310 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_4277fb59195df2a1" hs_bindgen_4277fb59195df2a1 :: + 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:945: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_4277fb59195df2a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_cf5adf1d5ea74918" hs_bindgen_cf5adf1d5ea74918 :: + 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:950: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_cf5adf1d5ea74918 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_cb616585009995e6" hs_bindgen_cb616585009995e6 :: + 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:955: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_cb616585009995e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_8024ffd2915162b1" hs_bindgen_8024ffd2915162b1 :: + 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:960: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_8024ffd2915162b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_86a39baaaf755a8f" hs_bindgen_86a39baaaf755a8f :: + 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:966: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_86a39baaaf755a8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_ca0bb30809e2be27" hs_bindgen_ca0bb30809e2be27 :: + 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:971: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_ca0bb30809e2be27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_a4558cb6bb18d7d9" hs_bindgen_a4558cb6bb18d7d9 :: + 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:976: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_a4558cb6bb18d7d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_306a9bd0d84a29bf" hs_bindgen_306a9bd0d84a29bf :: + 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:981: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_306a9bd0d84a29bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_e2ec15f62745f6ec" hs_bindgen_e2ec15f62745f6ec :: + 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:986: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_e2ec15f62745f6ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_31fcddba1f83896c" hs_bindgen_31fcddba1f83896c :: + 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:991: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_31fcddba1f83896c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_9a4c7fa35252b01d" hs_bindgen_9a4c7fa35252b01d :: + 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:998: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_9a4c7fa35252b01d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_da81508977e73b5c" hs_bindgen_da81508977e73b5c :: + 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:1003: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_da81508977e73b5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_b089bff80174b805" hs_bindgen_b089bff80174b805 :: + 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:1005: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_b089bff80174b805 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_42c74a15822a9850" hs_bindgen_42c74a15822a9850 :: + 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:1007: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_42c74a15822a9850 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_729219b4781940ac" hs_bindgen_729219b4781940ac :: + 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:1009: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_729219b4781940ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_6534e4d48e30f6a0" hs_bindgen_6534e4d48e30f6a0 :: + 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:1010: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_6534e4d48e30f6a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_bbb8490795fd5b4d" hs_bindgen_bbb8490795fd5b4d :: + 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:1012: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_bbb8490795fd5b4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_6c9854427e6a9308" hs_bindgen_6c9854427e6a9308 :: + 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:1013: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_6c9854427e6a9308 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_e1ff84979930347c" hs_bindgen_e1ff84979930347c :: + 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:1015: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_e1ff84979930347c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_f31a83fddb33c77a" hs_bindgen_f31a83fddb33c77a :: + 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:1016: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_f31a83fddb33c77a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_64bbbbbc1e8170cd" hs_bindgen_64bbbbbc1e8170cd :: + 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:1017: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_64bbbbbc1e8170cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_1e8e6f73f3c884df" hs_bindgen_1e8e6f73f3c884df :: + 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:1020: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_1e8e6f73f3c884df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_0a1675126d8f103f" hs_bindgen_0a1675126d8f103f :: + 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:1023: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_0a1675126d8f103f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_951132df5d9a83a5" hs_bindgen_951132df5d9a83a5 :: + 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:1030: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_951132df5d9a83a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_11f414e5c2c4113c" hs_bindgen_11f414e5c2c4113c :: + 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:1037: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_11f414e5c2c4113c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_5eb244de164b1d2d" hs_bindgen_5eb244de164b1d2d :: + 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:1042: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_5eb244de164b1d2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_51aaeb92b531c8ef" hs_bindgen_51aaeb92b531c8ef :: + 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:1046: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_51aaeb92b531c8ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_9907fbbf218e585b" hs_bindgen_9907fbbf218e585b :: + 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:1048: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_9907fbbf218e585b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_01886176d762acfe" hs_bindgen_01886176d762acfe :: + 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:1049: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_01886176d762acfe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_085365bcc7bfb1dd" hs_bindgen_085365bcc7bfb1dd :: + 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:1051: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_085365bcc7bfb1dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_d5af876271b1c313" hs_bindgen_d5af876271b1c313 :: + 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:1053: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_d5af876271b1c313 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_2c6c6c5b7edd77d8" hs_bindgen_2c6c6c5b7edd77d8 :: + 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:1056: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_2c6c6c5b7edd77d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_25f3fb8af7faeeca" hs_bindgen_25f3fb8af7faeeca :: + 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:1058: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_25f3fb8af7faeeca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_1ce8b5a64270b838" hs_bindgen_1ce8b5a64270b838 :: + 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:1065: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_1ce8b5a64270b838 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_e945f53d4ff6943b" hs_bindgen_e945f53d4ff6943b :: + 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:1072: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_e945f53d4ff6943b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_b8278f2beec848f9" hs_bindgen_b8278f2beec848f9 :: + 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:1077: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_b8278f2beec848f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_3291e20ccfcbb3e4" hs_bindgen_3291e20ccfcbb3e4 :: + 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:1082: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_3291e20ccfcbb3e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_6030b0e60703f5d1" hs_bindgen_6030b0e60703f5d1 :: + 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:1100: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_6030b0e60703f5d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_8a9631fddd6662fb" hs_bindgen_8a9631fddd6662fb :: + 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:1111: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_8a9631fddd6662fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_54e13e751897d38d" hs_bindgen_54e13e751897d38d :: + 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:1122: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_54e13e751897d38d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_be922641f5ab2931" hs_bindgen_be922641f5ab2931 :: + 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)/__]: hanlder 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:1130: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_be922641f5ab2931 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_94afd6c8a8ddfb71" hs_bindgen_94afd6c8a8ddfb71 :: + 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:1136: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_94afd6c8a8ddfb71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_ba7206cf8818311b" hs_bindgen_ba7206cf8818311b :: + 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:1141: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_ba7206cf8818311b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_6cc863ffde03258d" hs_bindgen_6cc863ffde03258d :: + 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:1146: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_6cc863ffde03258d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_203018a962670bac" hs_bindgen_203018a962670bac :: + 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:1153: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_203018a962670bac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_e60ca740b217d87e" hs_bindgen_e60ca740b217d87e :: + 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:1160: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_e60ca740b217d87e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_23b858c3f7c00d9e" hs_bindgen_23b858c3f7c00d9e :: + 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:1171: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_23b858c3f7c00d9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_8e6d0935eb327170" hs_bindgen_8e6d0935eb327170 :: + 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:1178: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_8e6d0935eb327170 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_de3f3ae807346937" hs_bindgen_de3f3ae807346937 :: + 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:1185: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_de3f3ae807346937 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_804171324cd7863a" hs_bindgen_804171324cd7863a :: + 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:1201: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_804171324cd7863a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_596df216ff1921da" hs_bindgen_596df216ff1921da :: + 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:1217: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_596df216ff1921da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_4dbc8a48d3ce2070" hs_bindgen_4dbc8a48d3ce2070 :: + 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:1225: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_4dbc8a48d3ce2070 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_2baf96a671f8d3c6" hs_bindgen_2baf96a671f8d3c6 :: + 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:1233: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_2baf96a671f8d3c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_5b0e81d73343dd3c" hs_bindgen_5b0e81d73343dd3c :: + 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:1241: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_5b0e81d73343dd3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_20f70a7699883bc5" hs_bindgen_20f70a7699883bc5 :: + 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:1247: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_20f70a7699883bc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_f3a03dc343fef301" hs_bindgen_f3a03dc343fef301 :: + 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:1253: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_f3a03dc343fef301 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_04aef2ba6fc94e63" hs_bindgen_04aef2ba6fc94e63 :: + 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:1258: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_04aef2ba6fc94e63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_164206b58a144719" hs_bindgen_164206b58a144719 :: + 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:1263: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_164206b58a144719 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_7c0269565cb373b9" hs_bindgen_7c0269565cb373b9 :: + 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:1268: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_7c0269565cb373b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_4a9ce11f69b8be08" hs_bindgen_4a9ce11f69b8be08 :: + 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:1273: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_4a9ce11f69b8be08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_f598b4d39543a17f" hs_bindgen_f598b4d39543a17f :: + 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:1278: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_f598b4d39543a17f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_fc032cdd96fdb7ea" hs_bindgen_fc032cdd96fdb7ea :: + 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:1283: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_fc032cdd96fdb7ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_4a16e89d4d95efd7" hs_bindgen_4a16e89d4d95efd7 :: + 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:1288: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_4a16e89d4d95efd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_97485950e9df4711" hs_bindgen_97485950e9df4711 :: + 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:1295: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_97485950e9df4711 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_96852ca0bd6cb8b6" hs_bindgen_96852ca0bd6cb8b6 :: + 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:1311: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_96852ca0bd6cb8b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_54d0261f03cba99e" hs_bindgen_54d0261f03cba99e :: + 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:1321: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_54d0261f03cba99e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_cfc0c8ecec32a324" hs_bindgen_cfc0c8ecec32a324 :: + 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:1325: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_cfc0c8ecec32a324 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_7a73ec4dae88946a" hs_bindgen_7a73ec4dae88946a :: + 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:1328: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_7a73ec4dae88946a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_5bd0a18c67ad335b" hs_bindgen_5bd0a18c67ad335b :: + 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:1330: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_5bd0a18c67ad335b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_266f477af2151994" hs_bindgen_266f477af2151994 :: + 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:1332: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_266f477af2151994 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_a6b62cd0081d8eea" hs_bindgen_a6b62cd0081d8eea :: + 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:1334: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_a6b62cd0081d8eea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_fe11d14d72a9d521" hs_bindgen_fe11d14d72a9d521 :: + 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:1336: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_fe11d14d72a9d521 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_83a06860bc3259ef" hs_bindgen_83a06860bc3259ef :: + 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:1356: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_83a06860bc3259ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_69a314d29d026af0" hs_bindgen_69a314d29d026af0 :: + 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:1378: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_69a314d29d026af0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_fec8bfa977cebdb3" hs_bindgen_fec8bfa977cebdb3 :: + 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:1386: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_fec8bfa977cebdb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_64d5cebed012d138" hs_bindgen_64d5cebed012d138 :: + 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:1391: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_64d5cebed012d138 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_fa279141630080c0" hs_bindgen_fa279141630080c0 :: + 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:1405: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_fa279141630080c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_c645262e100c0b68" hs_bindgen_c645262e100c0b68 :: + 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:1410: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_c645262e100c0b68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_900d1e1163e93716" hs_bindgen_900d1e1163e93716 :: + 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:1415: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_900d1e1163e93716 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_ff9e6b6105d8e592" hs_bindgen_ff9e6b6105d8e592 :: + 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:1420: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_ff9e6b6105d8e592 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_af52e1e63fbbd78c" hs_bindgen_af52e1e63fbbd78c :: + 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:1422: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_af52e1e63fbbd78c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_658ade7073c41fc5" hs_bindgen_658ade7073c41fc5 :: + 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:1429: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_658ade7073c41fc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_59b5f89f6131af00" hs_bindgen_59b5f89f6131af00 :: + 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:1445: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_59b5f89f6131af00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_00b62b57e46dc2cf" hs_bindgen_00b62b57e46dc2cf :: + 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:1461: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_00b62b57e46dc2cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_2ebc88e97c4a0f93" hs_bindgen_2ebc88e97c4a0f93 :: + 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:1478: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_2ebc88e97c4a0f93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_6f353fb2da2f074b" hs_bindgen_6f353fb2da2f074b :: + 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:1493: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_6f353fb2da2f074b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_b6c18597e9b6924b" hs_bindgen_b6c18597e9b6924b :: + 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:1509: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_b6c18597e9b6924b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_a19ddcb4344ff94a" hs_bindgen_a19ddcb4344ff94a :: + 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:1524: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_a19ddcb4344ff94a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_e7d69cce20bb7580" hs_bindgen_e7d69cce20bb7580 :: + 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:1535: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_e7d69cce20bb7580 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_e380814f1d07ed7a" hs_bindgen_e380814f1d07ed7a :: + 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:1537: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_e380814f1d07ed7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_ece6e1f0433ed879" hs_bindgen_ece6e1f0433ed879 :: + 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:1540: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_ece6e1f0433ed879 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_f34ac3b7c05b7acd" hs_bindgen_f34ac3b7c05b7acd :: + 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:1545: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_f34ac3b7c05b7acd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_de241a575b7aa77a" hs_bindgen_de241a575b7aa77a :: + 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:1550: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_de241a575b7aa77a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_b64bc189f8aeac5e" hs_bindgen_b64bc189f8aeac5e :: + 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:1555: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_b64bc189f8aeac5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_4fc0c4853f33e21f" hs_bindgen_4fc0c4853f33e21f :: + 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:1557: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_4fc0c4853f33e21f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_7cc76008d62c1320" hs_bindgen_7cc76008d62c1320 :: + 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:1562: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_7cc76008d62c1320 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_59e39702140431d2" hs_bindgen_59e39702140431d2 :: + 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:1564: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_59e39702140431d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_13f3768abe81239b" hs_bindgen_13f3768abe81239b :: + 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:1567: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_13f3768abe81239b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_c05da548fc5e98ca" hs_bindgen_c05da548fc5e98ca :: + 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:1572: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_c05da548fc5e98ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_cd6721506044c96e" hs_bindgen_cd6721506044c96e :: + 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:1577: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_cd6721506044c96e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_7318b54c22fb3098" hs_bindgen_7318b54c22fb3098 :: + 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:1579: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_7318b54c22fb3098 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_b198f2c5c3d3a64f" hs_bindgen_b198f2c5c3d3a64f :: + 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:1585: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_b198f2c5c3d3a64f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_30bdb6e7636fb152" hs_bindgen_30bdb6e7636fb152 :: + 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:1588: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_30bdb6e7636fb152 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_b49c00fba529a168" hs_bindgen_b49c00fba529a168 :: + 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:1595: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_b49c00fba529a168 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_9dd79a27887c638e" hs_bindgen_9dd79a27887c638e :: + 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:1602: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_9dd79a27887c638e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_af893d8ab7883438" hs_bindgen_af893d8ab7883438 :: + 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:1607: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_af893d8ab7883438 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_5276c1f3d03e1825" hs_bindgen_5276c1f3d03e1825 :: + 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:1609: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_5276c1f3d03e1825 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_c53068f8aef25aba" hs_bindgen_c53068f8aef25aba :: + 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:1612: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_c53068f8aef25aba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_9156c0455bd7dbe7" hs_bindgen_9156c0455bd7dbe7 :: + 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:1614: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_9156c0455bd7dbe7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_c8f3fd15bfaeacda" hs_bindgen_c8f3fd15bfaeacda :: + 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:1616: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_c8f3fd15bfaeacda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_7aa70e2bb040cd8c" hs_bindgen_7aa70e2bb040cd8c :: + 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:1618: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_7aa70e2bb040cd8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_f2098e24cb5a2996" hs_bindgen_f2098e24cb5a2996 :: + 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:1620: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_f2098e24cb5a2996 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_6718c95728e08e92" hs_bindgen_6718c95728e08e92 :: + 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:1623: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_6718c95728e08e92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_49e99dafecdebfb1" hs_bindgen_49e99dafecdebfb1 :: + 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:1625: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_49e99dafecdebfb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_5376d02142c468f9" hs_bindgen_5376d02142c468f9 :: + 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:1628: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_5376d02142c468f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_7ed74c7baba17692" hs_bindgen_7ed74c7baba17692 :: + 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:1630: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_7ed74c7baba17692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_6e7af4caa74f66fa" hs_bindgen_6e7af4caa74f66fa :: + 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:1636: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_6e7af4caa74f66fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_6ba5675c040a6d1f" hs_bindgen_6ba5675c040a6d1f :: + 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:1639: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_6ba5675c040a6d1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_62ca2a16bfa931e3" hs_bindgen_62ca2a16bfa931e3 :: + 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:1642: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_62ca2a16bfa931e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_d0bf083f8edb94d1" hs_bindgen_d0bf083f8edb94d1 :: + 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:1645: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_d0bf083f8edb94d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_7652ced11d3390a3" hs_bindgen_7652ced11d3390a3 :: + 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:1647: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_7652ced11d3390a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_b9018accb3f16a57" hs_bindgen_b9018accb3f16a57 :: + 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:1649: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_b9018accb3f16a57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_876cbe0ae367ff42" hs_bindgen_876cbe0ae367ff42 :: + 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:1651: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_876cbe0ae367ff42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_13717c5e8e015973" hs_bindgen_13717c5e8e015973 :: + 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:1666: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_13717c5e8e015973 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_adcf6d3e4d30f5d4" hs_bindgen_adcf6d3e4d30f5d4 :: + 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:1680: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_adcf6d3e4d30f5d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_7d0faf95181cc806" hs_bindgen_7d0faf95181cc806 :: + 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:1698: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_7d0faf95181cc806 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_4694bd73cdc8fb9c" hs_bindgen_4694bd73cdc8fb9c :: + 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:1713: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_4694bd73cdc8fb9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_0c6a113721b2a891" hs_bindgen_0c6a113721b2a891 :: + 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:1719: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_0c6a113721b2a891 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_513245355946a902" hs_bindgen_513245355946a902 :: + 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:1721: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_513245355946a902 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_5c54510eaee73fd3" hs_bindgen_5c54510eaee73fd3 :: + 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:1724: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_5c54510eaee73fd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_50f1fe57f3083622" hs_bindgen_50f1fe57f3083622 :: + 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:1727: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_50f1fe57f3083622 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_fec5400975471abf" hs_bindgen_fec5400975471abf :: + 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:1733: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_fec5400975471abf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_ae58134aae246e88" hs_bindgen_ae58134aae246e88 :: + 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:1735: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_ae58134aae246e88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_f077e3445870d31b" hs_bindgen_f077e3445870d31b :: + 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:1738: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_f077e3445870d31b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_7b38389ed49f7419" hs_bindgen_7b38389ed49f7419 :: + 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:1741: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_7b38389ed49f7419 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_6794653f035b7006" hs_bindgen_6794653f035b7006 :: + 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:1747: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_6794653f035b7006 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_2f19eb3278babea2" hs_bindgen_2f19eb3278babea2 :: + 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:1749: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_2f19eb3278babea2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_3a0c7a6603f4d2e5" hs_bindgen_3a0c7a6603f4d2e5 :: + 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:1752: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_3a0c7a6603f4d2e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_fb255826a67fb6af" hs_bindgen_fb255826a67fb6af :: + 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:1755: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_fb255826a67fb6af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_f203c2d524d80001" hs_bindgen_f203c2d524d80001 :: + 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:1761: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_f203c2d524d80001 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_4675289085d0e828" hs_bindgen_4675289085d0e828 :: + 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:1763: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_4675289085d0e828 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_70a4d8f14f761d50" hs_bindgen_70a4d8f14f761d50 :: + 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:1766: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_70a4d8f14f761d50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_b6f2c9679697668f" hs_bindgen_b6f2c9679697668f :: + 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:1769: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_b6f2c9679697668f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_0c5741ff627d413b" hs_bindgen_0c5741ff627d413b :: + 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:1776: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_0c5741ff627d413b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_81897250a33bf376" hs_bindgen_81897250a33bf376 :: + 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:1779: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_81897250a33bf376 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_4e67c9487ab8a873" hs_bindgen_4e67c9487ab8a873 :: + 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:1790: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_4e67c9487ab8a873 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_41fe808095553577" hs_bindgen_41fe808095553577 :: + 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:1793: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_41fe808095553577 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_541cc05cb5517dee" hs_bindgen_541cc05cb5517dee :: + 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:1797: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_541cc05cb5517dee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_63b4200bfa0f373a" hs_bindgen_63b4200bfa0f373a :: + 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:1801: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_63b4200bfa0f373a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_a4d2fd38e0bb693e" hs_bindgen_a4d2fd38e0bb693e :: + 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:1808: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_a4d2fd38e0bb693e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_47f56167174b4289" hs_bindgen_47f56167174b4289 :: + 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:1811: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_47f56167174b4289 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_9365580e5bfb7ac7" hs_bindgen_9365580e5bfb7ac7 :: + 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:1818: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_9365580e5bfb7ac7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_d463610b127ecd9b" hs_bindgen_d463610b127ecd9b :: + 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:1824: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_d463610b127ecd9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_a082b1ea6fb473c1" hs_bindgen_a082b1ea6fb473c1 :: + 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:1834: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_a082b1ea6fb473c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_ec88beb4c0a503a8" hs_bindgen_ec88beb4c0a503a8 :: + 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:1837: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_ec88beb4c0a503a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_f2d011e4a95601f0" hs_bindgen_f2d011e4a95601f0 :: + 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:1844: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_f2d011e4a95601f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_697d476d968156f4" hs_bindgen_697d476d968156f4 :: + 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:1847: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_697d476d968156f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_fbee8cac4a81fd3b" hs_bindgen_fbee8cac4a81fd3b :: + 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:1853: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_fbee8cac4a81fd3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_3e4b092790da1ac3" hs_bindgen_3e4b092790da1ac3 :: + 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:1856: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_3e4b092790da1ac3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_b1af90c4772c5a0d" hs_bindgen_b1af90c4772c5a0d :: + 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:1859: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_b1af90c4772c5a0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_90b345c03bd10e25" hs_bindgen_90b345c03bd10e25 :: + 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:1862: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_90b345c03bd10e25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_e13a9324870ec1a3" hs_bindgen_e13a9324870ec1a3 :: + 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:1865: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_e13a9324870ec1a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_fe8827a8c3f730d4" hs_bindgen_fe8827a8c3f730d4 :: + 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:1868: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_fe8827a8c3f730d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_3db4fd7fda6a66bd" hs_bindgen_3db4fd7fda6a66bd :: + 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:1871: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_3db4fd7fda6a66bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_59e3b93905e6985c" hs_bindgen_59e3b93905e6985c :: + 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:1875: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_59e3b93905e6985c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_59afb80b5a1fd2f3" hs_bindgen_59afb80b5a1fd2f3 :: + 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:1879: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_59afb80b5a1fd2f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_2fa339358eaadb2d" hs_bindgen_2fa339358eaadb2d :: + 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:1882: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_2fa339358eaadb2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_e88894bffba5dbf9" hs_bindgen_e88894bffba5dbf9 :: + 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:1889: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_e88894bffba5dbf9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_6fe3af6af6a39104" hs_bindgen_6fe3af6af6a39104 :: + 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:1897: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_6fe3af6af6a39104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_cc6378baeb381c65" hs_bindgen_cc6378baeb381c65 :: + 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:1902: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_cc6378baeb381c65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_abf1701942f18b5f" hs_bindgen_abf1701942f18b5f :: + 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:1905: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_abf1701942f18b5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_10e235c6d4c3841f" hs_bindgen_10e235c6d4c3841f :: + 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:1908: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_10e235c6d4c3841f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_ec419bdca754686d" hs_bindgen_ec419bdca754686d :: + 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:1921: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_ec419bdca754686d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_55b982eee17da8f9" hs_bindgen_55b982eee17da8f9 :: + 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:1926: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_55b982eee17da8f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_b166b3d529ce6299" hs_bindgen_b166b3d529ce6299 :: + 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:1929: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_b166b3d529ce6299 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_cdad78a90417f5b0" hs_bindgen_cdad78a90417f5b0 :: + 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:1932: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_cdad78a90417f5b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_e3008e0e552e8d96" hs_bindgen_e3008e0e552e8d96 :: + 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:1944: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_e3008e0e552e8d96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_84ec3a157c0cb19f" hs_bindgen_84ec3a157c0cb19f :: + 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:1949: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_84ec3a157c0cb19f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_2d836fa003fac9b7" hs_bindgen_2d836fa003fac9b7 :: + 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:1951: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_2d836fa003fac9b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_49425536309e953e" hs_bindgen_49425536309e953e :: + 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:1953: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_49425536309e953e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_2c42050828148262" hs_bindgen_2c42050828148262 :: + 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:1956: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_2c42050828148262 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_d94d1ca36f91bb32" hs_bindgen_d94d1ca36f91bb32 :: + 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:1964: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_d94d1ca36f91bb32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_b44393bc650cb417" hs_bindgen_b44393bc650cb417 :: + 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:1972: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_b44393bc650cb417 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_e1f29848a0d8152f" hs_bindgen_e1f29848a0d8152f :: + 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:1974: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_e1f29848a0d8152f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_2ad217a7b9d0ac7c" hs_bindgen_2ad217a7b9d0ac7c :: + 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:1975: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_2ad217a7b9d0ac7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_0756fa49655d214d" hs_bindgen_0756fa49655d214d :: + 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:1983: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_0756fa49655d214d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_c15216e6417cd539" hs_bindgen_c15216e6417cd539 :: + 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:1988: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_c15216e6417cd539 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_13e7265d4684d9ba" hs_bindgen_13e7265d4684d9ba :: + 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:1990: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_13e7265d4684d9ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_e7ee4e05afe64f2c" hs_bindgen_e7ee4e05afe64f2c :: + 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:1993: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_e7ee4e05afe64f2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_3a03b7b9fce1cb04" hs_bindgen_3a03b7b9fce1cb04 :: + 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:1995: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_3a03b7b9fce1cb04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_d45460daef3dd11c" hs_bindgen_d45460daef3dd11c :: + 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:1998: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_d45460daef3dd11c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_83c9ddba06350be0" hs_bindgen_83c9ddba06350be0 :: + 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:2012: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_83c9ddba06350be0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_18d49fb2c74e9717" hs_bindgen_18d49fb2c74e9717 :: + 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:2017: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_18d49fb2c74e9717 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_f73d633b65faf92a" hs_bindgen_f73d633b65faf92a :: + 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:2020: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_f73d633b65faf92a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_410a74cf8c9ef11d" hs_bindgen_410a74cf8c9ef11d :: + 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:2025: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_410a74cf8c9ef11d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_e02019779e92e3b9" hs_bindgen_e02019779e92e3b9 :: + 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:2029: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_e02019779e92e3b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_49d120ad4c668358" hs_bindgen_49d120ad4c668358 :: + 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:2042: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_49d120ad4c668358 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_1c67fdd0c613580d" hs_bindgen_1c67fdd0c613580d :: + 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:2047: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_1c67fdd0c613580d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_91db90cfc8f2d3ff" hs_bindgen_91db90cfc8f2d3ff :: + 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:2050: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_91db90cfc8f2d3ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_d146cd02472c0a6b" hs_bindgen_d146cd02472c0a6b :: + 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:2055: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_d146cd02472c0a6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_fdb6aa0184d789f0" hs_bindgen_fdb6aa0184d789f0 :: + 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:2068: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_fdb6aa0184d789f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_fe2484149bc7cb0f" hs_bindgen_fe2484149bc7cb0f :: + 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:2075: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_fe2484149bc7cb0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_1990c16685a77faa" hs_bindgen_1990c16685a77faa :: + 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:2090: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_1990c16685a77faa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_6d7cd5b949cc7a96" hs_bindgen_6d7cd5b949cc7a96 :: + 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:2105: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_6d7cd5b949cc7a96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_0bd820585c509266" hs_bindgen_0bd820585c509266 :: + 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:2106: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_0bd820585c509266 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_466ab2aa52a096ca" hs_bindgen_466ab2aa52a096ca :: + 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:2111: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_466ab2aa52a096ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_4870eac3a9fcd5ea" hs_bindgen_4870eac3a9fcd5ea :: + 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:2113: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_4870eac3a9fcd5ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_d40f74ce34cf0cb3" hs_bindgen_d40f74ce34cf0cb3 :: + 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:2116: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_d40f74ce34cf0cb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_8f73aae17935474a" hs_bindgen_8f73aae17935474a :: + 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:2117: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_8f73aae17935474a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_c18391d7e1bdc9a4" hs_bindgen_c18391d7e1bdc9a4 :: + 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:2119: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_c18391d7e1bdc9a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_673343ec4285e9da" hs_bindgen_673343ec4285e9da :: + 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:2120: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_673343ec4285e9da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_eed63f41b91f440b" hs_bindgen_eed63f41b91f440b :: + 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:2123: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_eed63f41b91f440b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_61d235a2197553da" hs_bindgen_61d235a2197553da :: + 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:2125: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_61d235a2197553da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_1b27168837fa353a" hs_bindgen_1b27168837fa353a :: + 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:2126: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_1b27168837fa353a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_92f6bfde86935427" hs_bindgen_92f6bfde86935427 :: + 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:2127: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_92f6bfde86935427 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_1443fadbd185bfb4" hs_bindgen_1443fadbd185bfb4 :: + 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:2129: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_1443fadbd185bfb4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_f17990c243a13129" hs_bindgen_f17990c243a13129 :: + 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:2132: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_f17990c243a13129 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_a7a5ddd5e006a9b0" hs_bindgen_a7a5ddd5e006a9b0 :: + 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:2134: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_a7a5ddd5e006a9b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_79194a28de35939f" hs_bindgen_79194a28de35939f :: + 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:2137: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_79194a28de35939f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_9e8511db52e02eea" hs_bindgen_9e8511db52e02eea :: + 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:2141: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_9e8511db52e02eea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_7f1c433507d92daf" hs_bindgen_7f1c433507d92daf :: + 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:2144: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_7f1c433507d92daf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_3f185b18f98e32f9" hs_bindgen_3f185b18f98e32f9 :: + 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:2147: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_3f185b18f98e32f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_1e86c00480d5c664" hs_bindgen_1e86c00480d5c664 :: + 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:2163: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_1e86c00480d5c664 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_ff6b7aa95c18dbed" hs_bindgen_ff6b7aa95c18dbed :: + 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:2169: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_ff6b7aa95c18dbed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_a8be75600bdf8711" hs_bindgen_a8be75600bdf8711 :: + 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:2180: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_a8be75600bdf8711 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_183cccd2dcde1bcd" hs_bindgen_183cccd2dcde1bcd :: + 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:2195: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_183cccd2dcde1bcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_9018a05b41b3a22c" hs_bindgen_9018a05b41b3a22c :: + 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:2203: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_9018a05b41b3a22c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_100c2a54b810ad4e" hs_bindgen_100c2a54b810ad4e :: + 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:2205: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_100c2a54b810ad4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_07148963d940de41" hs_bindgen_07148963d940de41 :: + 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:2207: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_07148963d940de41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_825d0a026c9fc486" hs_bindgen_825d0a026c9fc486 :: + 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:2213: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_825d0a026c9fc486 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_e2bb5d54dc678da8" hs_bindgen_e2bb5d54dc678da8 :: + 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:2220: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_e2bb5d54dc678da8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_8df54c253b548b79" hs_bindgen_8df54c253b548b79 :: + 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:2238: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_8df54c253b548b79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_bc20a2fc5a19a3e1" hs_bindgen_bc20a2fc5a19a3e1 :: + 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:2247: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_bc20a2fc5a19a3e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_2a59e3919cdf9963" hs_bindgen_2a59e3919cdf9963 :: + 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:2255: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_2a59e3919cdf9963 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_84153b405e4bf147" hs_bindgen_84153b405e4bf147 :: + 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:2265: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_84153b405e4bf147 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_68ef79d8c47ccb6f" hs_bindgen_68ef79d8c47ccb6f :: + 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:2284: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_68ef79d8c47ccb6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_9e1a6d0214be0922" hs_bindgen_9e1a6d0214be0922 :: + 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:2291: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_9e1a6d0214be0922 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_04668557d7f3630c" hs_bindgen_04668557d7f3630c :: + 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:2297: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_04668557d7f3630c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_a6f6dd2e64d00a77" hs_bindgen_a6f6dd2e64d00a77 :: + 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:2303: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_a6f6dd2e64d00a77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_29d391c0ef620a79" hs_bindgen_29d391c0ef620a79 :: + 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:2316: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_29d391c0ef620a79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_be5a3e0939d8e51b" hs_bindgen_be5a3e0939d8e51b :: + 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:2324: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_be5a3e0939d8e51b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_970078832b7e01a9" hs_bindgen_970078832b7e01a9 :: + 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:2333: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_970078832b7e01a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_9a86873c4843404c" hs_bindgen_9a86873c4843404c :: + 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:2344: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_9a86873c4843404c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_1afa4316f4d5d784" hs_bindgen_1afa4316f4d5d784 :: + 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:2355: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_1afa4316f4d5d784 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_caadd0c1ad9a442e" hs_bindgen_caadd0c1ad9a442e :: + 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:2362: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_caadd0c1ad9a442e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_309194d3a76ee707" hs_bindgen_309194d3a76ee707 :: + 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:2365: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_309194d3a76ee707 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_b6c431cc7c3a30ea" hs_bindgen_b6c431cc7c3a30ea :: + 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:2368: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_b6c431cc7c3a30ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_7b739a6e5e7cc1d4" hs_bindgen_7b739a6e5e7cc1d4 :: + 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:2380: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_7b739a6e5e7cc1d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_b42ec165da9a354d" hs_bindgen_b42ec165da9a354d :: + 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:2388: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_b42ec165da9a354d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_31f6b53a2e329da1" hs_bindgen_31f6b53a2e329da1 :: + 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:2403: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_31f6b53a2e329da1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_68aedc642cc9dc46" hs_bindgen_68aedc642cc9dc46 :: + 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:2422: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_68aedc642cc9dc46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_382fa319995e1344" hs_bindgen_382fa319995e1344 :: + 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:2438: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_382fa319995e1344 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_b3b83067b69e4e82" hs_bindgen_b3b83067b69e4e82 :: + 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:2465: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_b3b83067b69e4e82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_6624a7b01a1f3ce2" hs_bindgen_6624a7b01a1f3ce2 :: + 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:2483: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_6624a7b01a1f3ce2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_3a6c1e0d4be3187f" hs_bindgen_3a6c1e0d4be3187f :: + 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:2504: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_3a6c1e0d4be3187f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_fe08007ef2fdf121" hs_bindgen_fe08007ef2fdf121 :: + 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:2525: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_fe08007ef2fdf121 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_c02a04ff1f0f8780" hs_bindgen_c02a04ff1f0f8780 :: + 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:2550: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_c02a04ff1f0f8780 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_0ad49cad140e40f5" hs_bindgen_0ad49cad140e40f5 :: + 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:2558: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_0ad49cad140e40f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_52d763f1ceb3041f" hs_bindgen_52d763f1ceb3041f :: + 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:2568: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_52d763f1ceb3041f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_382b3e4e78118c90" hs_bindgen_382b3e4e78118c90 :: + 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:2579: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_382b3e4e78118c90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_c03ad62eb98d895c" hs_bindgen_c03ad62eb98d895c :: + 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:2591: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_c03ad62eb98d895c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_c4c93c18ff04cf82" hs_bindgen_c4c93c18ff04cf82 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2598: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_c4c93c18ff04cf82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_976901a0bb4adb33" hs_bindgen_976901a0bb4adb33 :: + 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:2612: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_976901a0bb4adb33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_45fb5dcecb2a2757" hs_bindgen_45fb5dcecb2a2757 :: + IO (Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_crypto_backend_state_destroy #-} + +{-| Frees all resouces 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:2624: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_45fb5dcecb2a2757 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_a64c502299aa27db" hs_bindgen_a64c502299aa27db :: + 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:2635: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_a64c502299aa27db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_c12db3dcae9bcbab" hs_bindgen_c12db3dcae9bcbab :: + 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:2647: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_c12db3dcae9bcbab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_450b8fb521fe6ba5" hs_bindgen_450b8fb521fe6ba5 :: + 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:2654: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_450b8fb521fe6ba5 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/Safe.hs new file mode 100644 index 00000000..41dce533 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/Safe.hs @@ -0,0 +1,14907 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_8_0.Safe where + +import Botan.Bindings.Generated.Botan_3_8_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_47d08574c73d1bbe (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_8b76011ab6b6a7bd (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_80b94fb143702539 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_955f37bfb1e3af32 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_8c80dc7f77e41b30 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_bfd93e3cb7f761b3 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_154964951c18e409 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_7b1bd5c9c6e2c81c (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_30fdb525c65e5824 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_0718f39e7e8f62ad (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51615cdae0951a5f (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a5367ce3a0833b1c (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_243caac882dea659 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1407a589c9b27eed (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d97d06172e3b75e3 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f27b86cbe60aa619 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b5ebfa3ed487658d (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_553aeec5531f92f0 (" + , " 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_63e7f945593510e4 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_86bf151e7208ca27 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18bddeb3649965a6 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3197f40ccd30097f (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2282cc2ef042e0a (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5085f108f7c18c39 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c67172ab5305f465 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ac80542d5556135 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4dbb751f15e38163 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a8d34d618c5103b0 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c3fc8126c3b864f7 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9c66fa726d12ad3 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_531480eec60b18da (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_bc9e1ddafc872d8e (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_446251dcf44bff00 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3435a95371520aef (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b83fba4ad738cf91 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_89a1fdc5989f9dd0 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1afabc1b4a13de28 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4783b057fbd58e9f (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a1b38170a8482d55 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ce1a486ef2c86d9d (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_8536835d7eaf0205 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1b468a4fe65b294e (" + , " 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_dd0ca52088c8e525 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f03803a65307d479 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fe8dcf00fdfb91a6 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c53ea68475a5ac7 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bfbef712882bd90e (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1496260860f14e8 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de276849645e8062 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_0a774caec921d181 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_e988bba86e89d0d0 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f8024336fd8d4f6 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ad8bc2ae10a75431 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d031234b63291d24 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2adb58db90ab1ee7 (" + , " 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_75e6da0a058fcf45 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3df47969cb082557 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_9ad06fbc2e664bd4 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_282e3d70d801c5a1 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_61920727338abf31 (" + , " 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_4fb3107943ad798f (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_3d5ef0fdf8346e7f (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a4ce7c9f8fc3486b (" + , " 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_567c725c80154928 (" + , " 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_7b80e148ff019645 (" + , " 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_7a804fcf1bfd1903 (" + , " 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_eb6d62dbe9acad1d (" + , " 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_424998b6b6e63b00 (" + , " 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_0c81c782d7990644 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0fc9651564c13f84 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1b4099ac01d7fc16 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_151703c69c7f1376 (" + , " 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_89e03c7d0d2a68a0 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_6c7808c391f5bae1 (" + , " 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_0a1b5dcc965d6eba (" + , " 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_c06d299910f0292c (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a6024755c886b68a (" + , " 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_6ffe6c381a3d0659 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_db14a148c49994c2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e6b04cfac1e6b21f (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c003b108788a992d (" + , " 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_ea69e931f60cc986 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_2ee489baaeb5633b (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_711c1636f1ad5864 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_460a67e0b3325a82 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_351ebcac932cd75b (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_45771fab4c7542b1 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c835666bf6d9277d (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebe5fc30e130d4f9 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11a0b9490e5de955 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_03d855a9fcaa7abe (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_683dc48fffa053ce (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_1e8e7e88a384e275 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_7c9b6b04774352bb (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_5130004fb378f0e5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_f287d63a25d753e6 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_40f797178b2570f0 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_087f9c0e45d5e805 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_751b80932f27d801 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5300030b44d90ecd (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ceb37b665889b12b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8d85337498b902ed (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a1f6ce30fb3241fa (" + , " 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_7b8cf68903c1051e (" + , " 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_5ef246875fe1a776 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_358982bf7340b932 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7554956eea42471e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4c7e65fc6c19dab (" + , " 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_6ffa81c3772cf2ce (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_023d819fe48ec53b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54cae8d26b51520a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e862687a9961dc5 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_700f7e78880f88ae (" + , " 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_34782f5e8b56cc9c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ad95bddacb97ae1 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9b88d4c63628793a (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_703548933e6c0ace (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c9eb6cd0dd1f9068 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a7ae831620a6fb0 (" + , " 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_45ad646b48fa4d83 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a505eba2e5090cff (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1288ba99aeacd58a (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92dbb76281bbef2f (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_35d508f5345e7f49 (" + , " 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_bf35ef67d6fb5eea (" + , " 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_ba6486e4cf820213 (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_00f3dbf5660d56d3 (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a01ed282afba016c (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_389437a2bf2b4dbb (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_1a9569aa1bf02839 (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a77d5192abad3da8 (" + , " 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_5c03ff9e902ef9c5 (" + , " 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_a11847d018e34196 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c46ff0b00091ebeb (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_531818ad059c4440 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_212ff7a5f1721396 (" + , " 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_7b473417c13441ab (" + , " 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_eb7a609825df8d60 (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ce9159b800b8574 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a93265bae824924f (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79f40fd27cbfb16e (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1c3333dc6b2654e6 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7df24a717f71108c (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_664ceb6423195f04 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0c61ac6df258f2d (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7073fc62cd954246 (" + , " 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_cfa8de307f68d01b (" + , " 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_03a3952695aef68e (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_af6e36c73a62da71 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_83b4de371152ae08 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ba7a4b7c0b13bcb (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d0214226decddd05 (" + , " 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_87bf08f777a77126 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c63bc25b185ccca7 (" + , " 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_d7d0803a062263e0 (" + , " 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_d4c7b2e0daa35d33 (" + , " 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_9f41e1772985ba42 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dbfff578a0506ff8 (" + , " 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_7559de76b40ba2ab (" + , " 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_5c58890cf037c823 (" + , " 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_d4d0c0056845d5a4 (" + , " 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_ce46f0ed5bfbbe5a (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_460c23a9f26dea0e (" + , " 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_8f5976ca6bdac760 (" + , " 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_38b03fdef344adad (" + , " 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_0fdb809ec77196b9 (" + , " 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_b3b750702fe14859 (" + , " 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_fae8a8ebc0baf305 (" + , " 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_aedbbd4812b3980d (" + , " 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_f15d4f1f357efbb0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bdaadeee8c8c23a5 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6b2d3ad57df2f146 (" + , " 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_8982f92a85a9e67d (" + , " 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_51a179a50139ca02 (" + , " 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_414ffe2f17f0721a (" + , " 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_76681c6d56f5f278 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50ad829c70acdd05 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8051151a6f474a35 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0982af7e75a9557f (" + , " 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_a30d183c4c99e99c (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fb62cc5930c4e8d0 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6be0ed91d66e7c0d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f78bc32c00f6406 (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3199f5cc3b392bf5 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c3ad0f8320cc81cc (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_242d35ec8682b258 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_18187a53b49a6100 (" + , " 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_71a719b703caed77 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d0b7927348b26081 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf87ca2dfa7af723 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_030c63edc795c79c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de6f5fc49addd202 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_59677ea3a6e2be67 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53d1e726d2988ad7 (" + , " 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_473dc2c11d8ed6ed (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8355cfd44ad59cac (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a8baf47b8ceb24c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_156f3e2cdb7331e0 (" + , " 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_0eabe7a1a8c6674e (" + , " 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_f96bf180e80d0a70 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_189ecd496d6c461f (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dc373378b413f906 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4dcfb5173963e623 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_986a9e9895a0ebc8 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_84e89aadf3250575 (" + , " 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_e026065108c1931f (" + , " 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_5dbf39459fa84455 (" + , " 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_b76f9e0aacc32a66 (" + , " 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_6bca28ce9a4848ea (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_711db195c3297b31 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b7a262bc4786be8 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0714e7fba4c29053 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ec8e53d6ecfb9427 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e2861f26b3b1190d (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6674ce93fc2cb57 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e9ed626707a175ba (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_745125ac73b59a60 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8e6a22dd3b444f12 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d25f54fd283d0f43 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf86a61c2913db8f (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73cee01b3da56a26 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f9bb07b995d5acac (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9cf392a34af8c303 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7929896dbdf0f400 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73b9964ecca4bab4 (" + , " 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_6f05792c2b85cf1e (" + , " 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_ce2a117b536ff135 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b336f070719e6321 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_30df7c66dfd5c3ad (" + , " 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_49e77b54e0d514a6 (" + , " 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_7ff79367ff3dcadb (" + , " 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_4577fb199b4b38b1 (" + , " 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_1cf18b3b61484b69 (" + , " 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_8b6811b8c7d40e99 (" + , " 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_693e3ec954a937e1 (" + , " 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_748b763a9f029e56 (" + , " 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_7be9f8a557753a88 (" + , " 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_af898bb4a0cd2c2e (" + , " 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_a6cabec43f35a066 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_4273ce1e455f7994 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fb1f2bb9e31349d2 (" + , " 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_199214957ade3b59 (" + , " 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_ae59b05228c40db9 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_537aa920d0d4a096 (" + , " 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_febdee2bc655eaec (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8add434d17701bf8 (" + , " 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_fc081375d833cd91 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a5b7c405401795cd (" + , " 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_cabc4d4902a846b6 (" + , " 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_b01ef36a6c5a4171 (" + , " 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_325f9eb070f6e6e6 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a307811560ddb973 (" + , " 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_3ed0b06689d95fc5 (" + , " 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_85566999a173a442 (" + , " 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_03ef3e304685c481 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ad55434abd60a509 (" + , " 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_51e6b72c49ea3583 (" + , " 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_f35210f19970efbb (" + , " 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_405d5d2569d84d49 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5ffee883a9a61638 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_48865bcf2faed777 (" + , " 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_9af61da3a4f25f23 (" + , " 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_d8106b99ffef5929 (" + , " 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_5854d001e239ee4b (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7fec35ba33a32446 (" + , " 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_8bdb545d086c786d (" + , " 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_62befbee9f2c3f17 (" + , " 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_92c2ff4be238ea2b (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a6de72ea434d2a41 (" + , " 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_a238a4b955e78f4c (" + , " 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_91b028ddf54528b1 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a71c3bec17bc3ebc (" + , " 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_b467867c79d6c0d2 (" + , " 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_2d4214273d6b3cc3 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_776c4d9445871d68 (" + , " 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_8ec8c02f3a6f5fd1 (" + , " 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_873a9410d8e843ca (" + , " 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_cf756da23f33ef35 (" + , " 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_0967884ccbb8eb0f (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b8c9fcbaca6a120f (" + , " 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_1ccdb7a78ec6f5c3 (" + , " 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_af4ecb7f37680caf (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_561e8f3de529c72d (" + , " 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_dc282b7fece403c0 (" + , " 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_352a4ad6d55d7108 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aaddf20ef6f68d81 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7abf20f5b709bdfa (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cb431fdd1ed8a105 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a9bddc45701a56cd (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_977f65961ab1ec58 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a7f7ec180900c889 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_959684583776619a (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e006175a856d2f2c (" + , " 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_6b0ebd14e2462f10 (" + , " 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_fe373e1fc3f5d70f (" + , " 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_48081a0e34defe35 (" + , " 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_c03e57d9461884ae (" + , " 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_3fac9091e1c15ac3 (" + , " 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_3721f8321a733de2 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e0e778b10f649bd4 (" + , " 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_b1dd29eb2a439854 (" + , " 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_d149381adef2811a (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8a44df9cd5b12f28 (" + , " 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_3a985f88f6d5dbf1 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_471aad7b5dc8ee6e (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3d1c7299722a72c (" + , " 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_7dbb7f60999e742d (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_a88bc892c2ab9160 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_600327f9e85cfa0b (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e0e93d0c2378567 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b3e6bdd8976d8d1c (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f4a67e657892a27e (" + , " 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_c1cee1d3cb7b19a6 (" + , " 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_2b11e788789b5ac3 (" + , " 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_418eea7129dc917b (" + , " 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_a0b9bdfa2138ae9c (" + , " 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_204fb34aad78a34a (" + , " 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_4890daa20e678563 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cb02014f4a001e0b (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f804dc0179895496 (" + , " 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_a6c1cddd89899f79 (" + , " 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_449f65b6753f2890 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_62a31d81caf3f7c7 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7576034828e45304 (" + , " 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_8a62e3473c29ea05 (" + , " 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_7960824c0c3a4072 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_219abe9fb5e0fc33 (" + , " 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_e37d1b854a9fd211 (" + , " 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_df43b0a7e187c590 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_9cc8783ed2b236a5 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cc1665e9be370313 (" + , " 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_36adeda48a2e5955 (" + , " 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_7c3d1b69b7f364ad (" + , " 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_8fa627d0da35ff96 (" + , " 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_0746ad4a3431c85a (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_441269def25111f5 (" + , " 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_2523b341c52cbc90 (" + , " 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_27da8eda3ec702c5 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_5ca78ee16904b2d4 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2222134849e6864 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_faf9f8be0c63a8d7 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9cac8421d79e6fe0 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52fe1fcedf3795e1 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_83f2be0c295ed09e (" + , " 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_da1d01ce7a5b7196 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d039bf46fbf47760 (" + , " 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_96b90a3cf45d4633 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f9d3cc86fba9872 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_47d08574c73d1bbe" hs_bindgen_47d08574c73d1bbe :: + 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:174: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_47d08574c73d1bbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_8b76011ab6b6a7bd" hs_bindgen_8b76011ab6b6a7bd :: + 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:183: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_8b76011ab6b6a7bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_80b94fb143702539" hs_bindgen_80b94fb143702539 :: + 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:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_80b94fb143702539 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_955f37bfb1e3af32" hs_bindgen_955f37bfb1e3af32 :: + 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:196: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_955f37bfb1e3af32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_8c80dc7f77e41b30" hs_bindgen_8c80dc7f77e41b30 :: + 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:201:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_8c80dc7f77e41b30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_bfd93e3cb7f761b3" hs_bindgen_bfd93e3cb7f761b3 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_bfd93e3cb7f761b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_154964951c18e409" hs_bindgen_154964951c18e409 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:211:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_154964951c18e409 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_7b1bd5c9c6e2c81c" hs_bindgen_7b1bd5c9c6e2c81c :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:216:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_7b1bd5c9c6e2c81c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_30fdb525c65e5824" hs_bindgen_30fdb525c65e5824 :: + 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:223:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_30fdb525c65e5824 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_0718f39e7e8f62ad" hs_bindgen_0718f39e7e8f62ad :: + 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:228: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_0718f39e7e8f62ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_51615cdae0951a5f" hs_bindgen_51615cdae0951a5f :: + 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:234: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_51615cdae0951a5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_a5367ce3a0833b1c" hs_bindgen_a5367ce3a0833b1c :: + 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:240: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_a5367ce3a0833b1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_243caac882dea659" hs_bindgen_243caac882dea659 :: + 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:255: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_243caac882dea659 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_1407a589c9b27eed" hs_bindgen_1407a589c9b27eed :: + 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:265: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_1407a589c9b27eed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_d97d06172e3b75e3" hs_bindgen_d97d06172e3b75e3 :: + 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:277: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_d97d06172e3b75e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_f27b86cbe60aa619" hs_bindgen_f27b86cbe60aa619 :: + 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:282: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_f27b86cbe60aa619 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_b5ebfa3ed487658d" hs_bindgen_b5ebfa3ed487658d :: + 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:301: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_b5ebfa3ed487658d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_553aeec5531f92f0" hs_bindgen_553aeec5531f92f0 :: + 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:313: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_553aeec5531f92f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_63e7f945593510e4" hs_bindgen_63e7f945593510e4 :: + 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:328: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_63e7f945593510e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_86bf151e7208ca27" hs_bindgen_86bf151e7208ca27 :: + 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:337: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_86bf151e7208ca27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_18bddeb3649965a6" hs_bindgen_18bddeb3649965a6 :: + 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:347: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_18bddeb3649965a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_3197f40ccd30097f" hs_bindgen_3197f40ccd30097f :: + 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:357: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_3197f40ccd30097f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_c2282cc2ef042e0a" hs_bindgen_c2282cc2ef042e0a :: + 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:367: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_c2282cc2ef042e0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_5085f108f7c18c39" hs_bindgen_5085f108f7c18c39 :: + 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:374: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_5085f108f7c18c39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_c67172ab5305f465" hs_bindgen_c67172ab5305f465 :: + 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:388: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_c67172ab5305f465 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_9ac80542d5556135" hs_bindgen_9ac80542d5556135 :: + 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:396: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_9ac80542d5556135 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_4dbb751f15e38163" hs_bindgen_4dbb751f15e38163 :: + 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:404: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_4dbb751f15e38163 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_a8d34d618c5103b0" hs_bindgen_a8d34d618c5103b0 :: + 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:412: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_a8d34d618c5103b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_c3fc8126c3b864f7" hs_bindgen_c3fc8126c3b864f7 :: + 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:421: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_c3fc8126c3b864f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_e9c66fa726d12ad3" hs_bindgen_e9c66fa726d12ad3 :: + 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:431: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_e9c66fa726d12ad3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_531480eec60b18da" hs_bindgen_531480eec60b18da :: + 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:439: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_531480eec60b18da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_bc9e1ddafc872d8e" hs_bindgen_bc9e1ddafc872d8e :: + 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:446: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_bc9e1ddafc872d8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_446251dcf44bff00" hs_bindgen_446251dcf44bff00 :: + 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:454: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_446251dcf44bff00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_3435a95371520aef" hs_bindgen_3435a95371520aef :: + 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:469: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_3435a95371520aef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_b83fba4ad738cf91" hs_bindgen_b83fba4ad738cf91 :: + 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:477: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_b83fba4ad738cf91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_89a1fdc5989f9dd0" hs_bindgen_89a1fdc5989f9dd0 :: + 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:486: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_89a1fdc5989f9dd0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_1afabc1b4a13de28" hs_bindgen_1afabc1b4a13de28 :: + 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:495: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_1afabc1b4a13de28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_4783b057fbd58e9f" hs_bindgen_4783b057fbd58e9f :: + 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:504: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_4783b057fbd58e9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_a1b38170a8482d55" hs_bindgen_a1b38170a8482d55 :: + 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:514: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_a1b38170a8482d55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_ce1a486ef2c86d9d" hs_bindgen_ce1a486ef2c86d9d :: + 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:522: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_ce1a486ef2c86d9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_8536835d7eaf0205" hs_bindgen_8536835d7eaf0205 :: + 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:530: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_8536835d7eaf0205 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_1b468a4fe65b294e" hs_bindgen_1b468a4fe65b294e :: + 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:540: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_1b468a4fe65b294e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_dd0ca52088c8e525" hs_bindgen_dd0ca52088c8e525 :: + 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:550: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_dd0ca52088c8e525 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_f03803a65307d479" hs_bindgen_f03803a65307d479 :: + 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:564: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_f03803a65307d479 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_fe8dcf00fdfb91a6" hs_bindgen_fe8dcf00fdfb91a6 :: + 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:569: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_fe8dcf00fdfb91a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_2c53ea68475a5ac7" hs_bindgen_2c53ea68475a5ac7 :: + 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:574: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_2c53ea68475a5ac7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_bfbef712882bd90e" hs_bindgen_bfbef712882bd90e :: + 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:579: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_bfbef712882bd90e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_e1496260860f14e8" hs_bindgen_e1496260860f14e8 :: + 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:584: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_e1496260860f14e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_de276849645e8062" hs_bindgen_de276849645e8062 :: + 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:589: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_de276849645e8062 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_0a774caec921d181" hs_bindgen_0a774caec921d181 :: + 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:596: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_0a774caec921d181 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_e988bba86e89d0d0" hs_bindgen_e988bba86e89d0d0 :: + 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:601: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_e988bba86e89d0d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_5f8024336fd8d4f6" hs_bindgen_5f8024336fd8d4f6 :: + 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:607: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_5f8024336fd8d4f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_ad8bc2ae10a75431" hs_bindgen_ad8bc2ae10a75431 :: + 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:613: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_ad8bc2ae10a75431 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_d031234b63291d24" hs_bindgen_d031234b63291d24 :: + 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:619:5@ + +__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_d031234b63291d24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_2adb58db90ab1ee7" hs_bindgen_2adb58db90ab1ee7 :: + 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:625:5@ + +__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_2adb58db90ab1ee7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_75e6da0a058fcf45" hs_bindgen_75e6da0a058fcf45 :: + 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:630: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_75e6da0a058fcf45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_3df47969cb082557" hs_bindgen_3df47969cb082557 :: + 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:640:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_3df47969cb082557 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_9ad06fbc2e664bd4" hs_bindgen_9ad06fbc2e664bd4 :: + 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:645: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_9ad06fbc2e664bd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_282e3d70d801c5a1" hs_bindgen_282e3d70d801c5a1 :: + 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:650: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_282e3d70d801c5a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_61920727338abf31" hs_bindgen_61920727338abf31 :: + 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_61920727338abf31 + +{-| + + 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:677: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_61920727338abf31 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_4fb3107943ad798f" hs_bindgen_4fb3107943ad798f :: + 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:689:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_4fb3107943ad798f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_3d5ef0fdf8346e7f" hs_bindgen_3d5ef0fdf8346e7f :: + 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:695:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_3d5ef0fdf8346e7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_a4ce7c9f8fc3486b" hs_bindgen_a4ce7c9f8fc3486b :: + 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_a4ce7c9f8fc3486b + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:714: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_a4ce7c9f8fc3486b x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_567c725c80154928" hs_bindgen_567c725c80154928 :: + 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_567c725c80154928 + +{-| 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:747: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_567c725c80154928 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_7b80e148ff019645" hs_bindgen_7b80e148ff019645 :: + 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_7b80e148ff019645 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:771: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_7b80e148ff019645 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_7a804fcf1bfd1903" hs_bindgen_7a804fcf1bfd1903 :: + 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_7a804fcf1bfd1903 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:798: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_7a804fcf1bfd1903 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_eb6d62dbe9acad1d" hs_bindgen_eb6d62dbe9acad1d :: + 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_eb6d62dbe9acad1d + +{-| 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:817: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_eb6d62dbe9acad1d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_424998b6b6e63b00" hs_bindgen_424998b6b6e63b00 :: + 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_424998b6b6e63b00 + +{-| 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:840: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_424998b6b6e63b00 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_8_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_0c81c782d7990644" hs_bindgen_0c81c782d7990644 :: + 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:858: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_0c81c782d7990644 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_0fc9651564c13f84" hs_bindgen_0fc9651564c13f84 :: + 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:864: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_0fc9651564c13f84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_1b4099ac01d7fc16" hs_bindgen_1b4099ac01d7fc16 :: + 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:870: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_1b4099ac01d7fc16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_151703c69c7f1376" hs_bindgen_151703c69c7f1376 :: + 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_151703c69c7f1376 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:875: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_151703c69c7f1376 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_89e03c7d0d2a68a0" hs_bindgen_89e03c7d0d2a68a0 :: + 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:881: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_89e03c7d0d2a68a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_6c7808c391f5bae1" hs_bindgen_6c7808c391f5bae1 :: + 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_6c7808c391f5bae1 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:887: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_6c7808c391f5bae1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_0a1b5dcc965d6eba" hs_bindgen_0a1b5dcc965d6eba :: + 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_0a1b5dcc965d6eba + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:893: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_0a1b5dcc965d6eba x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_c06d299910f0292c" hs_bindgen_c06d299910f0292c :: + 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:901: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_c06d299910f0292c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_a6024755c886b68a" hs_bindgen_a6024755c886b68a :: + 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:911: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_a6024755c886b68a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_6ffe6c381a3d0659" hs_bindgen_6ffe6c381a3d0659 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:924: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_6ffe6c381a3d0659 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_db14a148c49994c2" hs_bindgen_db14a148c49994c2 :: + 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:930:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_db14a148c49994c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_e6b04cfac1e6b21f" hs_bindgen_e6b04cfac1e6b21f :: + 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:935: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_e6b04cfac1e6b21f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_c003b108788a992d" hs_bindgen_c003b108788a992d :: + 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:940:28@ + +__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_c003b108788a992d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_ea69e931f60cc986" hs_bindgen_ea69e931f60cc986 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:945:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_ea69e931f60cc986 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_2ee489baaeb5633b" hs_bindgen_2ee489baaeb5633b :: + 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:950: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_2ee489baaeb5633b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_711c1636f1ad5864" hs_bindgen_711c1636f1ad5864 :: + 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:955: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_711c1636f1ad5864 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_460a67e0b3325a82" hs_bindgen_460a67e0b3325a82 :: + 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:960: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_460a67e0b3325a82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_351ebcac932cd75b" hs_bindgen_351ebcac932cd75b :: + 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:966: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_351ebcac932cd75b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_45771fab4c7542b1" hs_bindgen_45771fab4c7542b1 :: + 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:971: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_45771fab4c7542b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_c835666bf6d9277d" hs_bindgen_c835666bf6d9277d :: + 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:976: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_c835666bf6d9277d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_ebe5fc30e130d4f9" hs_bindgen_ebe5fc30e130d4f9 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:981: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_ebe5fc30e130d4f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_11a0b9490e5de955" hs_bindgen_11a0b9490e5de955 :: + 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_11a0b9490e5de955 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:986: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_11a0b9490e5de955 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_03d855a9fcaa7abe" hs_bindgen_03d855a9fcaa7abe :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:991: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_03d855a9fcaa7abe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_683dc48fffa053ce" hs_bindgen_683dc48fffa053ce :: + 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:998: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_683dc48fffa053ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_1e8e7e88a384e275" hs_bindgen_1e8e7e88a384e275 :: + 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:1003: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_1e8e7e88a384e275 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_7c9b6b04774352bb" hs_bindgen_7c9b6b04774352bb :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1005: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_7c9b6b04774352bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_5130004fb378f0e5" hs_bindgen_5130004fb378f0e5 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1007: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_5130004fb378f0e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_f287d63a25d753e6" hs_bindgen_f287d63a25d753e6 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1009: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_f287d63a25d753e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_40f797178b2570f0" hs_bindgen_40f797178b2570f0 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1010: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_40f797178b2570f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_087f9c0e45d5e805" hs_bindgen_087f9c0e45d5e805 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1012: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_087f9c0e45d5e805 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_751b80932f27d801" hs_bindgen_751b80932f27d801 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1013: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_751b80932f27d801 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_5300030b44d90ecd" hs_bindgen_5300030b44d90ecd :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1015: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_5300030b44d90ecd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_ceb37b665889b12b" hs_bindgen_ceb37b665889b12b :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1016: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_ceb37b665889b12b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_8d85337498b902ed" hs_bindgen_8d85337498b902ed :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1017: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_8d85337498b902ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_a1f6ce30fb3241fa" hs_bindgen_a1f6ce30fb3241fa :: + 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:1020: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_a1f6ce30fb3241fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_7b8cf68903c1051e" hs_bindgen_7b8cf68903c1051e :: + 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:1023: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_7b8cf68903c1051e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_5ef246875fe1a776" hs_bindgen_5ef246875fe1a776 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1030: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_5ef246875fe1a776 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_358982bf7340b932" hs_bindgen_358982bf7340b932 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1037: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_358982bf7340b932 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_7554956eea42471e" hs_bindgen_7554956eea42471e :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1042: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_7554956eea42471e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_d4c7e65fc6c19dab" hs_bindgen_d4c7e65fc6c19dab :: + 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:1046: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_d4c7e65fc6c19dab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_6ffa81c3772cf2ce" hs_bindgen_6ffa81c3772cf2ce :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1048: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_6ffa81c3772cf2ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_023d819fe48ec53b" hs_bindgen_023d819fe48ec53b :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1049: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_023d819fe48ec53b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_54cae8d26b51520a" hs_bindgen_54cae8d26b51520a :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1051: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_54cae8d26b51520a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_0e862687a9961dc5" hs_bindgen_0e862687a9961dc5 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1053: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_0e862687a9961dc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_700f7e78880f88ae" hs_bindgen_700f7e78880f88ae :: + 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:1056: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_700f7e78880f88ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_34782f5e8b56cc9c" hs_bindgen_34782f5e8b56cc9c :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1058: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_34782f5e8b56cc9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_2ad95bddacb97ae1" hs_bindgen_2ad95bddacb97ae1 :: + 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:1065: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_2ad95bddacb97ae1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_9b88d4c63628793a" hs_bindgen_9b88d4c63628793a :: + 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:1072: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_9b88d4c63628793a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_703548933e6c0ace" hs_bindgen_703548933e6c0ace :: + 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:1077: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_703548933e6c0ace + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_c9eb6cd0dd1f9068" hs_bindgen_c9eb6cd0dd1f9068 :: + 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:1082: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_c9eb6cd0dd1f9068 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_1a7ae831620a6fb0" hs_bindgen_1a7ae831620a6fb0 :: + 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:1100: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_1a7ae831620a6fb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_45ad646b48fa4d83" hs_bindgen_45ad646b48fa4d83 :: + 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:1111: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_45ad646b48fa4d83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_destroy@ +foreign import ccall safe "hs_bindgen_a505eba2e5090cff" hs_bindgen_a505eba2e5090cff :: + 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:1122:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_a505eba2e5090cff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_from_string@ +foreign import ccall safe "hs_bindgen_1288ba99aeacd58a" hs_bindgen_1288ba99aeacd58a :: + 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)/__]: hanlder 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:1130:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: hanlder 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_1288ba99aeacd58a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_register@ +foreign import ccall safe "hs_bindgen_92dbb76281bbef2f" hs_bindgen_92dbb76281bbef2f :: + 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:1136: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_92dbb76281bbef2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_view_string@ +foreign import ccall safe "hs_bindgen_35d508f5345e7f49" hs_bindgen_35d508f5345e7f49 :: + 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:1141: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_35d508f5345e7f49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_view_name@ +foreign import ccall safe "hs_bindgen_bf35ef67d6fb5eea" hs_bindgen_bf35ef67d6fb5eea :: + 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:1146: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_bf35ef67d6fb5eea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_equal@ +foreign import ccall safe "hs_bindgen_ba6486e4cf820213" hs_bindgen_ba6486e4cf820213 :: + 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:1153: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_ba6486e4cf820213 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_oid_cmp@ +foreign import ccall safe "hs_bindgen_00f3dbf5660d56d3" hs_bindgen_00f3dbf5660d56d3 :: + 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:1160: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_00f3dbf5660d56d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_destroy@ +foreign import ccall safe "hs_bindgen_a01ed282afba016c" hs_bindgen_a01ed282afba016c :: + 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:1171: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_a01ed282afba016c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_supports_application_specific_group@ +foreign import ccall safe "hs_bindgen_389437a2bf2b4dbb" hs_bindgen_389437a2bf2b4dbb :: + 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:1178: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_389437a2bf2b4dbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_supports_named_group@ +foreign import ccall safe "hs_bindgen_1a9569aa1bf02839" hs_bindgen_1a9569aa1bf02839 :: + 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:1185: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_1a9569aa1bf02839 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_from_params@ +foreign import ccall safe "hs_bindgen_a77d5192abad3da8" hs_bindgen_a77d5192abad3da8 :: + 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:1201: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_a77d5192abad3da8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_from_ber@ +foreign import ccall safe "hs_bindgen_5c03ff9e902ef9c5" hs_bindgen_5c03ff9e902ef9c5 :: + 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:1217: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_5c03ff9e902ef9c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_from_pem@ +foreign import ccall safe "hs_bindgen_a11847d018e34196" hs_bindgen_a11847d018e34196 :: + 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:1225: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_a11847d018e34196 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_from_oid@ +foreign import ccall safe "hs_bindgen_c46ff0b00091ebeb" hs_bindgen_c46ff0b00091ebeb :: + 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:1233: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_c46ff0b00091ebeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_from_name@ +foreign import ccall safe "hs_bindgen_531818ad059c4440" hs_bindgen_531818ad059c4440 :: + 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:1241: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_531818ad059c4440 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_view_der@ +foreign import ccall safe "hs_bindgen_212ff7a5f1721396" hs_bindgen_212ff7a5f1721396 :: + 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:1247: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_212ff7a5f1721396 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_view_pem@ +foreign import ccall safe "hs_bindgen_7b473417c13441ab" hs_bindgen_7b473417c13441ab :: + 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:1253: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_7b473417c13441ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_curve_oid@ +foreign import ccall safe "hs_bindgen_eb7a609825df8d60" hs_bindgen_eb7a609825df8d60 :: + 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:1258: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_eb7a609825df8d60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_p@ +foreign import ccall safe "hs_bindgen_4ce9159b800b8574" hs_bindgen_4ce9159b800b8574 :: + 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:1263: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_4ce9159b800b8574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_a@ +foreign import ccall safe "hs_bindgen_a93265bae824924f" hs_bindgen_a93265bae824924f :: + 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:1268: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_a93265bae824924f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_b@ +foreign import ccall safe "hs_bindgen_79f40fd27cbfb16e" hs_bindgen_79f40fd27cbfb16e :: + 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:1273: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_79f40fd27cbfb16e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_g_x@ +foreign import ccall safe "hs_bindgen_1c3333dc6b2654e6" hs_bindgen_1c3333dc6b2654e6 :: + 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:1278: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_1c3333dc6b2654e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_g_y@ +foreign import ccall safe "hs_bindgen_7df24a717f71108c" hs_bindgen_7df24a717f71108c :: + 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:1283: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_7df24a717f71108c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_get_order@ +foreign import ccall safe "hs_bindgen_664ceb6423195f04" hs_bindgen_664ceb6423195f04 :: + 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:1288: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_664ceb6423195f04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_group_equal@ +foreign import ccall safe "hs_bindgen_f0c61ac6df258f2d" hs_bindgen_f0c61ac6df258f2d :: + 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:1295: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_f0c61ac6df258f2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_7073fc62cd954246" hs_bindgen_7073fc62cd954246 :: + 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:1311: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_7073fc62cd954246 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_ec_privkey_create@ +foreign import ccall safe "hs_bindgen_cfa8de307f68d01b" hs_bindgen_cfa8de307f68d01b :: + 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:1321: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_cfa8de307f68d01b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_03a3952695aef68e" hs_bindgen_03a3952695aef68e :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1325: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_03a3952695aef68e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_af6e36c73a62da71" hs_bindgen_af6e36c73a62da71 :: + 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:1328: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_af6e36c73a62da71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_83b4de371152ae08" hs_bindgen_83b4de371152ae08 :: + 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:1330: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_83b4de371152ae08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_0ba7a4b7c0b13bcb" hs_bindgen_0ba7a4b7c0b13bcb :: + 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:1332: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_0ba7a4b7c0b13bcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_d0214226decddd05" hs_bindgen_d0214226decddd05 :: + 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:1334: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_d0214226decddd05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_87bf08f777a77126" hs_bindgen_87bf08f777a77126 :: + 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:1336: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_87bf08f777a77126 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_c63bc25b185ccca7" hs_bindgen_c63bc25b185ccca7 :: + 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:1356: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_c63bc25b185ccca7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_d7d0803a062263e0" hs_bindgen_d7d0803a062263e0 :: + 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:1378: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_d7d0803a062263e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_d4c7b2e0daa35d33" hs_bindgen_d4c7b2e0daa35d33 :: + 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_d4c7b2e0daa35d33 + +{-| 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:1386: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_d4c7b2e0daa35d33 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_9f41e1772985ba42" hs_bindgen_9f41e1772985ba42 :: + 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:1391:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_9f41e1772985ba42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_dbfff578a0506ff8" hs_bindgen_dbfff578a0506ff8 :: + 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:1405: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_dbfff578a0506ff8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_7559de76b40ba2ab" hs_bindgen_7559de76b40ba2ab :: + 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:1410: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_7559de76b40ba2ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_5c58890cf037c823" hs_bindgen_5c58890cf037c823 :: + 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:1415: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_5c58890cf037c823 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_d4d0c0056845d5a4" hs_bindgen_d4d0c0056845d5a4 :: + 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:1420: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_d4d0c0056845d5a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_ce46f0ed5bfbbe5a" hs_bindgen_ce46f0ed5bfbbe5a :: + 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:1422: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_ce46f0ed5bfbbe5a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_460c23a9f26dea0e" hs_bindgen_460c23a9f26dea0e :: + 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:1429: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_460c23a9f26dea0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_8f5976ca6bdac760" hs_bindgen_8f5976ca6bdac760 :: + 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:1445: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_8f5976ca6bdac760 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_38b03fdef344adad" hs_bindgen_38b03fdef344adad :: + 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:1461: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_38b03fdef344adad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_0fdb809ec77196b9" hs_bindgen_0fdb809ec77196b9 :: + 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:1478: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_0fdb809ec77196b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_b3b750702fe14859" hs_bindgen_b3b750702fe14859 :: + 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:1493: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_b3b750702fe14859 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_fae8a8ebc0baf305" hs_bindgen_fae8a8ebc0baf305 :: + 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:1509: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_fae8a8ebc0baf305 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_aedbbd4812b3980d" hs_bindgen_aedbbd4812b3980d :: + 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:1524: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_aedbbd4812b3980d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_f15d4f1f357efbb0" hs_bindgen_f15d4f1f357efbb0 :: + 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_f15d4f1f357efbb0 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1535: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_f15d4f1f357efbb0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_bdaadeee8c8c23a5" hs_bindgen_bdaadeee8c8c23a5 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1537: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_bdaadeee8c8c23a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_6b2d3ad57df2f146" hs_bindgen_6b2d3ad57df2f146 :: + 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:1540: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_6b2d3ad57df2f146 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_8982f92a85a9e67d" hs_bindgen_8982f92a85a9e67d :: + 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:1545: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_8982f92a85a9e67d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_51a179a50139ca02" hs_bindgen_51a179a50139ca02 :: + 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:1550: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_51a179a50139ca02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_414ffe2f17f0721a" hs_bindgen_414ffe2f17f0721a :: + 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:1555: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_414ffe2f17f0721a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_76681c6d56f5f278" hs_bindgen_76681c6d56f5f278 :: + 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:1557: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_76681c6d56f5f278 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_50ad829c70acdd05" hs_bindgen_50ad829c70acdd05 :: + 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:1562: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_50ad829c70acdd05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_8051151a6f474a35" hs_bindgen_8051151a6f474a35 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1564: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_8051151a6f474a35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_0982af7e75a9557f" hs_bindgen_0982af7e75a9557f :: + 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:1567: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_0982af7e75a9557f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_a30d183c4c99e99c" hs_bindgen_a30d183c4c99e99c :: + 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:1572:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_a30d183c4c99e99c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_fb62cc5930c4e8d0" hs_bindgen_fb62cc5930c4e8d0 :: + 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:1577: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_fb62cc5930c4e8d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_6be0ed91d66e7c0d" hs_bindgen_6be0ed91d66e7c0d :: + 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:1579: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_6be0ed91d66e7c0d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_oid@ +foreign import ccall safe "hs_bindgen_0f78bc32c00f6406" hs_bindgen_0f78bc32c00f6406 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1585: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_0f78bc32c00f6406 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_oid@ +foreign import ccall safe "hs_bindgen_3199f5cc3b392bf5" hs_bindgen_3199f5cc3b392bf5 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1588: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_3199f5cc3b392bf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_stateful_operation@ +foreign import ccall safe "hs_bindgen_c3ad0f8320cc81cc" hs_bindgen_c3ad0f8320cc81cc :: + 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:1595: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_c3ad0f8320cc81cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_remaining_operations@ +foreign import ccall safe "hs_bindgen_242d35ec8682b258" hs_bindgen_242d35ec8682b258 :: + 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:1602: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_242d35ec8682b258 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_18187a53b49a6100" hs_bindgen_18187a53b49a6100 :: + 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:1607: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_18187a53b49a6100 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_71a719b703caed77" hs_bindgen_71a719b703caed77 :: + 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_71a719b703caed77 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1609: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_71a719b703caed77 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_d0b7927348b26081" hs_bindgen_d0b7927348b26081 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1612: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_d0b7927348b26081 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_cf87ca2dfa7af723" hs_bindgen_cf87ca2dfa7af723 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1614: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_cf87ca2dfa7af723 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_030c63edc795c79c" hs_bindgen_030c63edc795c79c :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1616: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_030c63edc795c79c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_de6f5fc49addd202" hs_bindgen_de6f5fc49addd202 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1618: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_de6f5fc49addd202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_59677ea3a6e2be67" hs_bindgen_59677ea3a6e2be67 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1620: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_59677ea3a6e2be67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_53d1e726d2988ad7" hs_bindgen_53d1e726d2988ad7 :: + 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:1623: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_53d1e726d2988ad7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_473dc2c11d8ed6ed" hs_bindgen_473dc2c11d8ed6ed :: + 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:1625: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_473dc2c11d8ed6ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_8355cfd44ad59cac" hs_bindgen_8355cfd44ad59cac :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1628: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_8355cfd44ad59cac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_1a8baf47b8ceb24c" hs_bindgen_1a8baf47b8ceb24c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1630: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_1a8baf47b8ceb24c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_156f3e2cdb7331e0" hs_bindgen_156f3e2cdb7331e0 :: + 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:1636: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_156f3e2cdb7331e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_0eabe7a1a8c6674e" hs_bindgen_0eabe7a1a8c6674e :: + 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:1639: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_0eabe7a1a8c6674e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_f96bf180e80d0a70" hs_bindgen_f96bf180e80d0a70 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1642: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_f96bf180e80d0a70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_189ecd496d6c461f" hs_bindgen_189ecd496d6c461f :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1645: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_189ecd496d6c461f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_dc373378b413f906" hs_bindgen_dc373378b413f906 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1647: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_dc373378b413f906 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_4dcfb5173963e623" hs_bindgen_4dcfb5173963e623 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1649: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_4dcfb5173963e623 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_986a9e9895a0ebc8" hs_bindgen_986a9e9895a0ebc8 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1651: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_986a9e9895a0ebc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_84e89aadf3250575" hs_bindgen_84e89aadf3250575 :: + 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:1666: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_84e89aadf3250575 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_e026065108c1931f" hs_bindgen_e026065108c1931f :: + 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:1680: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_e026065108c1931f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_5dbf39459fa84455" hs_bindgen_5dbf39459fa84455 :: + 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:1698: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_5dbf39459fa84455 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_b76f9e0aacc32a66" hs_bindgen_b76f9e0aacc32a66 :: + 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:1713: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_b76f9e0aacc32a66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_6bca28ce9a4848ea" hs_bindgen_6bca28ce9a4848ea :: + 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_6bca28ce9a4848ea + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1719: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_6bca28ce9a4848ea x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_711db195c3297b31" hs_bindgen_711db195c3297b31 :: + 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_711db195c3297b31 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1721: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_711db195c3297b31 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_2b7a262bc4786be8" hs_bindgen_2b7a262bc4786be8 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1724: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_2b7a262bc4786be8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_0714e7fba4c29053" hs_bindgen_0714e7fba4c29053 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1727: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_0714e7fba4c29053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_ec8e53d6ecfb9427" hs_bindgen_ec8e53d6ecfb9427 :: + 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_ec8e53d6ecfb9427 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1733: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_ec8e53d6ecfb9427 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_e2861f26b3b1190d" hs_bindgen_e2861f26b3b1190d :: + 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_e2861f26b3b1190d + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1735: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_e2861f26b3b1190d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_c6674ce93fc2cb57" hs_bindgen_c6674ce93fc2cb57 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1738: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_c6674ce93fc2cb57 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_e9ed626707a175ba" hs_bindgen_e9ed626707a175ba :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1741: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_e9ed626707a175ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_745125ac73b59a60" hs_bindgen_745125ac73b59a60 :: + 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_745125ac73b59a60 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1747: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_745125ac73b59a60 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_8e6a22dd3b444f12" hs_bindgen_8e6a22dd3b444f12 :: + 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_8e6a22dd3b444f12 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1749: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_8e6a22dd3b444f12 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_d25f54fd283d0f43" hs_bindgen_d25f54fd283d0f43 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1752: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_d25f54fd283d0f43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_cf86a61c2913db8f" hs_bindgen_cf86a61c2913db8f :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1755: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_cf86a61c2913db8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_73cee01b3da56a26" hs_bindgen_73cee01b3da56a26 :: + 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_73cee01b3da56a26 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1761: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_73cee01b3da56a26 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_f9bb07b995d5acac" hs_bindgen_f9bb07b995d5acac :: + 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_f9bb07b995d5acac + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1763: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_f9bb07b995d5acac x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_9cf392a34af8c303" hs_bindgen_9cf392a34af8c303 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1766: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_9cf392a34af8c303 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_7929896dbdf0f400" hs_bindgen_7929896dbdf0f400 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1769: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_7929896dbdf0f400 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_73b9964ecca4bab4" hs_bindgen_73b9964ecca4bab4 :: + 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_73b9964ecca4bab4 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1776: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_73b9964ecca4bab4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_6f05792c2b85cf1e" hs_bindgen_6f05792c2b85cf1e :: + 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_6f05792c2b85cf1e + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1779: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_6f05792c2b85cf1e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_ce2a117b536ff135" hs_bindgen_ce2a117b536ff135 :: + 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_ce2a117b536ff135 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1790: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_ce2a117b536ff135 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_b336f070719e6321" hs_bindgen_b336f070719e6321 :: + 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_b336f070719e6321 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1793: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_b336f070719e6321 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_30df7c66dfd5c3ad" hs_bindgen_30df7c66dfd5c3ad :: + 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:1797: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_30df7c66dfd5c3ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_49e77b54e0d514a6" hs_bindgen_49e77b54e0d514a6 :: + 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:1801: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_49e77b54e0d514a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_7ff79367ff3dcadb" hs_bindgen_7ff79367ff3dcadb :: + 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_7ff79367ff3dcadb + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1808: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_7ff79367ff3dcadb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_4577fb199b4b38b1" hs_bindgen_4577fb199b4b38b1 :: + 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_4577fb199b4b38b1 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1811: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_4577fb199b4b38b1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_1cf18b3b61484b69" hs_bindgen_1cf18b3b61484b69 :: + 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_1cf18b3b61484b69 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1818: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_1cf18b3b61484b69 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_8b6811b8c7d40e99" hs_bindgen_8b6811b8c7d40e99 :: + 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_8b6811b8c7d40e99 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1824: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_8b6811b8c7d40e99 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_693e3ec954a937e1" hs_bindgen_693e3ec954a937e1 :: + 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_693e3ec954a937e1 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1834: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_693e3ec954a937e1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_748b763a9f029e56" hs_bindgen_748b763a9f029e56 :: + 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_748b763a9f029e56 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1837: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_748b763a9f029e56 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_7be9f8a557753a88" hs_bindgen_7be9f8a557753a88 :: + 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_7be9f8a557753a88 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1844: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_7be9f8a557753a88 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_af898bb4a0cd2c2e" hs_bindgen_af898bb4a0cd2c2e :: + 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_af898bb4a0cd2c2e + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1847: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_af898bb4a0cd2c2e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_a6cabec43f35a066" hs_bindgen_a6cabec43f35a066 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1853: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_a6cabec43f35a066 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_4273ce1e455f7994" hs_bindgen_4273ce1e455f7994 :: + 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:1856: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_4273ce1e455f7994 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_fb1f2bb9e31349d2" hs_bindgen_fb1f2bb9e31349d2 :: + 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:1859: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_fb1f2bb9e31349d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_199214957ade3b59" hs_bindgen_199214957ade3b59 :: + 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:1862: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_199214957ade3b59 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_ae59b05228c40db9" hs_bindgen_ae59b05228c40db9 :: + 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:1865: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_ae59b05228c40db9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_537aa920d0d4a096" hs_bindgen_537aa920d0d4a096 :: + 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:1868: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_537aa920d0d4a096 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_febdee2bc655eaec" hs_bindgen_febdee2bc655eaec :: + 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:1871: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_febdee2bc655eaec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_8add434d17701bf8" hs_bindgen_8add434d17701bf8 :: + 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:1875: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_8add434d17701bf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_fc081375d833cd91" hs_bindgen_fc081375d833cd91 :: + 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:1879: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_fc081375d833cd91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_a5b7c405401795cd" hs_bindgen_a5b7c405401795cd :: + 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:1882: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_a5b7c405401795cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_cabc4d4902a846b6" hs_bindgen_cabc4d4902a846b6 :: + 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:1889: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_cabc4d4902a846b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_b01ef36a6c5a4171" hs_bindgen_b01ef36a6c5a4171 :: + 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:1897: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_b01ef36a6c5a4171 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_325f9eb070f6e6e6" hs_bindgen_325f9eb070f6e6e6 :: + 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:1902: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_325f9eb070f6e6e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_a307811560ddb973" hs_bindgen_a307811560ddb973 :: + 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:1905: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_a307811560ddb973 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_3ed0b06689d95fc5" hs_bindgen_3ed0b06689d95fc5 :: + 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_3ed0b06689d95fc5 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1908: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_3ed0b06689d95fc5 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_85566999a173a442" hs_bindgen_85566999a173a442 :: + 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:1921: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_85566999a173a442 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_03ef3e304685c481" hs_bindgen_03ef3e304685c481 :: + 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:1926: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_03ef3e304685c481 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_ad55434abd60a509" hs_bindgen_ad55434abd60a509 :: + 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:1929: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_ad55434abd60a509 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_51e6b72c49ea3583" hs_bindgen_51e6b72c49ea3583 :: + 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_51e6b72c49ea3583 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1932: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_51e6b72c49ea3583 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_f35210f19970efbb" hs_bindgen_f35210f19970efbb :: + 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:1944: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_f35210f19970efbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_405d5d2569d84d49" hs_bindgen_405d5d2569d84d49 :: + 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:1949: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_405d5d2569d84d49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_5ffee883a9a61638" hs_bindgen_5ffee883a9a61638 :: + 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:1951: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_5ffee883a9a61638 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_48865bcf2faed777" hs_bindgen_48865bcf2faed777 :: + 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_48865bcf2faed777 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1953: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_48865bcf2faed777 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_9af61da3a4f25f23" hs_bindgen_9af61da3a4f25f23 :: + 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:1956: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_9af61da3a4f25f23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_d8106b99ffef5929" hs_bindgen_d8106b99ffef5929 :: + 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:1964: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_d8106b99ffef5929 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_5854d001e239ee4b" hs_bindgen_5854d001e239ee4b :: + 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:1972: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_5854d001e239ee4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_7fec35ba33a32446" hs_bindgen_7fec35ba33a32446 :: + 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_7fec35ba33a32446 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1974: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_7fec35ba33a32446 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_8bdb545d086c786d" hs_bindgen_8bdb545d086c786d :: + 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_8bdb545d086c786d + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1975: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_8bdb545d086c786d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_62befbee9f2c3f17" hs_bindgen_62befbee9f2c3f17 :: + 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:1983: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_62befbee9f2c3f17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_92c2ff4be238ea2b" hs_bindgen_92c2ff4be238ea2b :: + 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:1988: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_92c2ff4be238ea2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_a6de72ea434d2a41" hs_bindgen_a6de72ea434d2a41 :: + 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:1990: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_a6de72ea434d2a41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_a238a4b955e78f4c" hs_bindgen_a238a4b955e78f4c :: + 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:1993: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_a238a4b955e78f4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_91b028ddf54528b1" hs_bindgen_91b028ddf54528b1 :: + 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:1995: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_91b028ddf54528b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_a71c3bec17bc3ebc" hs_bindgen_a71c3bec17bc3ebc :: + 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_a71c3bec17bc3ebc + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1998: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_a71c3bec17bc3ebc x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_b467867c79d6c0d2" hs_bindgen_b467867c79d6c0d2 :: + 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:2012: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_b467867c79d6c0d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_2d4214273d6b3cc3" hs_bindgen_2d4214273d6b3cc3 :: + 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:2017: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_2d4214273d6b3cc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_776c4d9445871d68" hs_bindgen_776c4d9445871d68 :: + 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:2020: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_776c4d9445871d68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_8ec8c02f3a6f5fd1" hs_bindgen_8ec8c02f3a6f5fd1 :: + 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:2025: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_8ec8c02f3a6f5fd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_873a9410d8e843ca" hs_bindgen_873a9410d8e843ca :: + 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_873a9410d8e843ca + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2029: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_873a9410d8e843ca x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_cf756da23f33ef35" hs_bindgen_cf756da23f33ef35 :: + 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:2042: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_cf756da23f33ef35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_0967884ccbb8eb0f" hs_bindgen_0967884ccbb8eb0f :: + 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:2047: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_0967884ccbb8eb0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_b8c9fcbaca6a120f" hs_bindgen_b8c9fcbaca6a120f :: + 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:2050: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_b8c9fcbaca6a120f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_1ccdb7a78ec6f5c3" hs_bindgen_1ccdb7a78ec6f5c3 :: + 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_1ccdb7a78ec6f5c3 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2055: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_1ccdb7a78ec6f5c3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_af4ecb7f37680caf" hs_bindgen_af4ecb7f37680caf :: + 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:2068: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_af4ecb7f37680caf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_561e8f3de529c72d" hs_bindgen_561e8f3de529c72d :: + 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_561e8f3de529c72d + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2075: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_561e8f3de529c72d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_dc282b7fece403c0" hs_bindgen_dc282b7fece403c0 :: + 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_dc282b7fece403c0 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2090: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_dc282b7fece403c0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_352a4ad6d55d7108" hs_bindgen_352a4ad6d55d7108 :: + 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_352a4ad6d55d7108 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2105: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_352a4ad6d55d7108 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_aaddf20ef6f68d81" hs_bindgen_aaddf20ef6f68d81 :: + 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:2106: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_aaddf20ef6f68d81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_7abf20f5b709bdfa" hs_bindgen_7abf20f5b709bdfa :: + 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:2111: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_7abf20f5b709bdfa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_cb431fdd1ed8a105" hs_bindgen_cb431fdd1ed8a105 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2113: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_cb431fdd1ed8a105 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_a9bddc45701a56cd" hs_bindgen_a9bddc45701a56cd :: + 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:2116: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_a9bddc45701a56cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_977f65961ab1ec58" hs_bindgen_977f65961ab1ec58 :: + 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:2117: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_977f65961ab1ec58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_a7f7ec180900c889" hs_bindgen_a7f7ec180900c889 :: + 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:2119: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_a7f7ec180900c889 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_959684583776619a" hs_bindgen_959684583776619a :: + 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:2120: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_959684583776619a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_e006175a856d2f2c" hs_bindgen_e006175a856d2f2c :: + 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:2123: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_e006175a856d2f2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_6b0ebd14e2462f10" hs_bindgen_6b0ebd14e2462f10 :: + 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:2125: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_6b0ebd14e2462f10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_fe373e1fc3f5d70f" hs_bindgen_fe373e1fc3f5d70f :: + 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:2126: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_fe373e1fc3f5d70f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_48081a0e34defe35" hs_bindgen_48081a0e34defe35 :: + 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:2127: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_48081a0e34defe35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_c03e57d9461884ae" hs_bindgen_c03e57d9461884ae :: + 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:2129: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_c03e57d9461884ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_3fac9091e1c15ac3" hs_bindgen_3fac9091e1c15ac3 :: + 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:2132: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_3fac9091e1c15ac3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_3721f8321a733de2" hs_bindgen_3721f8321a733de2 :: + 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:2134: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_3721f8321a733de2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_e0e778b10f649bd4" hs_bindgen_e0e778b10f649bd4 :: + 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:2137: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_e0e778b10f649bd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_b1dd29eb2a439854" hs_bindgen_b1dd29eb2a439854 :: + 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:2141: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_b1dd29eb2a439854 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_d149381adef2811a" hs_bindgen_d149381adef2811a :: + 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:2144: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_d149381adef2811a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_8a44df9cd5b12f28" hs_bindgen_8a44df9cd5b12f28 :: + 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:2147: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_8a44df9cd5b12f28 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_3a985f88f6d5dbf1" hs_bindgen_3a985f88f6d5dbf1 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2163: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_3a985f88f6d5dbf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_471aad7b5dc8ee6e" hs_bindgen_471aad7b5dc8ee6e :: + 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:2169: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_471aad7b5dc8ee6e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_a3d1c7299722a72c" hs_bindgen_a3d1c7299722a72c :: + 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:2180: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_a3d1c7299722a72c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_7dbb7f60999e742d" hs_bindgen_7dbb7f60999e742d :: + 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:2195: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_7dbb7f60999e742d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_a88bc892c2ab9160" hs_bindgen_a88bc892c2ab9160 :: + 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:2203: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_a88bc892c2ab9160 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_600327f9e85cfa0b" hs_bindgen_600327f9e85cfa0b :: + 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_600327f9e85cfa0b + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2205: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_600327f9e85cfa0b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_0e0e93d0c2378567" hs_bindgen_0e0e93d0c2378567 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2207: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_0e0e93d0c2378567 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_b3e6bdd8976d8d1c" hs_bindgen_b3e6bdd8976d8d1c :: + 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:2213: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_b3e6bdd8976d8d1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_f4a67e657892a27e" hs_bindgen_f4a67e657892a27e :: + 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:2220: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_f4a67e657892a27e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_c1cee1d3cb7b19a6" hs_bindgen_c1cee1d3cb7b19a6 :: + 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_c1cee1d3cb7b19a6 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2238: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_c1cee1d3cb7b19a6 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_2b11e788789b5ac3" hs_bindgen_2b11e788789b5ac3 :: + 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_2b11e788789b5ac3 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2247: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_2b11e788789b5ac3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_418eea7129dc917b" hs_bindgen_418eea7129dc917b :: + 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_418eea7129dc917b + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2255: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_418eea7129dc917b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_a0b9bdfa2138ae9c" hs_bindgen_a0b9bdfa2138ae9c :: + 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_a0b9bdfa2138ae9c + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2265: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_a0b9bdfa2138ae9c x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_204fb34aad78a34a" hs_bindgen_204fb34aad78a34a :: + 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_204fb34aad78a34a + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2284: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_204fb34aad78a34a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_4890daa20e678563" hs_bindgen_4890daa20e678563 :: + 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:2291:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_4890daa20e678563 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_cb02014f4a001e0b" hs_bindgen_cb02014f4a001e0b :: + 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:2297: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_cb02014f4a001e0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_f804dc0179895496" hs_bindgen_f804dc0179895496 :: + 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:2303: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_f804dc0179895496 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_a6c1cddd89899f79" hs_bindgen_a6c1cddd89899f79 :: + 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_a6c1cddd89899f79 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2316: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_a6c1cddd89899f79 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_449f65b6753f2890" hs_bindgen_449f65b6753f2890 :: + 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:2324:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_449f65b6753f2890 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_62a31d81caf3f7c7" hs_bindgen_62a31d81caf3f7c7 :: + 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:2333: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_62a31d81caf3f7c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_7576034828e45304" hs_bindgen_7576034828e45304 :: + 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:2344: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_7576034828e45304 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_8a62e3473c29ea05" hs_bindgen_8a62e3473c29ea05 :: + 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_8a62e3473c29ea05 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2355: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_8a62e3473c29ea05 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_7960824c0c3a4072" hs_bindgen_7960824c0c3a4072 :: + 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:2362:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_7960824c0c3a4072 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_219abe9fb5e0fc33" hs_bindgen_219abe9fb5e0fc33 :: + 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_219abe9fb5e0fc33 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2365: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_219abe9fb5e0fc33 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_e37d1b854a9fd211" hs_bindgen_e37d1b854a9fd211 :: + 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_e37d1b854a9fd211 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2368: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_e37d1b854a9fd211 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_df43b0a7e187c590" hs_bindgen_df43b0a7e187c590 :: + 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:2380: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_df43b0a7e187c590 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_9cc8783ed2b236a5" hs_bindgen_9cc8783ed2b236a5 :: + 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:2388: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_9cc8783ed2b236a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_cc1665e9be370313" hs_bindgen_cc1665e9be370313 :: + 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_cc1665e9be370313 + +{-| 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:2403: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_cc1665e9be370313 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_36adeda48a2e5955" hs_bindgen_36adeda48a2e5955 :: + 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_36adeda48a2e5955 + +{-| 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:2422: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_36adeda48a2e5955 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_7c3d1b69b7f364ad" hs_bindgen_7c3d1b69b7f364ad :: + 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_7c3d1b69b7f364ad + +{-| 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:2438: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_7c3d1b69b7f364ad x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_8fa627d0da35ff96" hs_bindgen_8fa627d0da35ff96 :: + 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_8fa627d0da35ff96 + +{-| 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:2465: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_8fa627d0da35ff96 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_8_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_0746ad4a3431c85a" hs_bindgen_0746ad4a3431c85a :: + 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:2483: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_0746ad4a3431c85a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_441269def25111f5" hs_bindgen_441269def25111f5 :: + 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:2504: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_441269def25111f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_2523b341c52cbc90" hs_bindgen_2523b341c52cbc90 :: + 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:2525: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_2523b341c52cbc90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_27da8eda3ec702c5" hs_bindgen_27da8eda3ec702c5 :: + 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:2550:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_27da8eda3ec702c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_5ca78ee16904b2d4" hs_bindgen_5ca78ee16904b2d4 :: + 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:2558: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_5ca78ee16904b2d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_f2222134849e6864" hs_bindgen_f2222134849e6864 :: + 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:2568: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_f2222134849e6864 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_ctx_from_esys@ +foreign import ccall safe "hs_bindgen_faf9f8be0c63a8d7" hs_bindgen_faf9f8be0c63a8d7 :: + 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:2579: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_faf9f8be0c63a8d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_9cac8421d79e6fe0" hs_bindgen_9cac8421d79e6fe0 :: + 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:2591: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_9cac8421d79e6fe0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_52fe1fcedf3795e1" hs_bindgen_52fe1fcedf3795e1 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2598: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_52fe1fcedf3795e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_83f2be0c295ed09e" hs_bindgen_83f2be0c295ed09e :: + 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:2612: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_83f2be0c295ed09e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall safe "hs_bindgen_da1d01ce7a5b7196" hs_bindgen_da1d01ce7a5b7196 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2624: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_da1d01ce7a5b7196 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_d039bf46fbf47760" hs_bindgen_d039bf46fbf47760 :: + 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:2635: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_d039bf46fbf47760 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_96b90a3cf45d4633" hs_bindgen_96b90a3cf45d4633 :: + 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:2647: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_96b90a3cf45d4633 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_4f9d3cc86fba9872" hs_bindgen_4f9d3cc86fba9872 :: + 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:2654: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_4f9d3cc86fba9872 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/Unsafe.hs new file mode 100644 index 00000000..01fd53d4 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_0/Unsafe.hs @@ -0,0 +1,14907 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_8_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_8_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_2bc452774083249e (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_0e637be71f1b4111 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_743359e347b5efff (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_960f70b1397491fe (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_0cba498b288ca600 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_57a52260eb910e53 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_3358665ae56b8d43 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_29e2e5a59529dad6 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_e102bc46fe29bd6c (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_983dc0dcb713f85c (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cfc517b7ef9d31b6 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a52d4552b0b34095 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c3540eef8c1fe045 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_74f83d883ba1794a (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_196806b5fa220356 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f047dd5fd415cfb0 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1ab681f4740dc6ec (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e2adf6dbc00fcfb (" + , " 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_6073f4f9d17dafdc (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2168facd4330923d (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98301f9a446623d5 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e9fb6a2dfc48fc0b (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_272f6a01510bbcb7 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2762c372f965496e (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6e10cf2c68c08ae5 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_60c8ff46d965e796 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff7ef297a896024f (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_09a9b96c09642283 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc057cbcd0d6f4ac (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_022a2b7f8acbe3fa (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_61f8677072ad94fc (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_e3a5a50441398ce3 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2dd4fa51626f63ef (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_671498e6d9417292 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5054a61a232291a8 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ec1ec72565811f12 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_63f587d1d76b3f0f (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_598d2d80ca34a720 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3ee21e6d49a5bea0 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_64e884268f72f961 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_efee1b6cd8b5ce80 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5b74689c019d08b6 (" + , " 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_61c8dcbccc5694f6 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9816cd336a3c6da8 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_df1976dab158824a (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3789d1702d88038a (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_57d63a4d06fb1128 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a38e5eb08ed1335 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4494f6232871a6b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_3a78cb7a2abcd8b4 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_74dec949422623f1 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3bc7fd900444c5bf (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40594978444acf32 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_082e4a41fd34de58 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ef22e3ad5475a8d (" + , " 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_c9a2acec05ca55ff (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ee47cd3078aac062 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_c279780c6fe69cbb (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a9ce096b9481a04c (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d2a21969e3248a89 (" + , " 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_67861d3252a6353b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_ee636f61c637ddeb (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1dd7862941573628 (" + , " 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_051486d977e65f89 (" + , " 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_783b6a39cbf6a033 (" + , " 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_89692983c2efabee (" + , " 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_6a2d4bd083a96c4a (" + , " 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_4ebf5819dce0e94d (" + , " 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_43c35abb50c68b81 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_41c8c9195808f6c7 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bc7a5d4346f1024d (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_0effe626c156f2d4 (" + , " 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_84f3ca329bf48458 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_7a268aac1d392431 (" + , " 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_3d6fefc7c1259ef0 (" + , " 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_b20cd08fc27010c3 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5571ccb77fa6c84c (" + , " 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_7554ef3df84d1c3a (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_d6ec162fc26eb3ec (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6dcbddedbc8e9453 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4ab532d4648b18f6 (" + , " 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_415cd7a1ac43794d (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_e9acd1e36d3da83e (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_36ab76a64f5a2ebb (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cecc94af86e6bd7b (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eb06ab63d2b8608d (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_51df8b389b5ec7c5 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55cd78cb6a31b04b (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_25816a865ebebfe0 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d64b7724d8161baa (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d0483c30fd6c4c18 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_09adce5d43621c26 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_92cb6c150e11586b (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_169e614b11358b06 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_6a96afbe93767259 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_467a36372cd272ea (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_ac74fa1843a14c52 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_814201a96cf691ad (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bb5cccda94898053 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5de072ea6d5ef9a6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc13b5b7b69fd642 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_084b95c581272fc8 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_114712ea961f5703 (" + , " 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_6b4c008d2d9ea2df (" + , " 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_31f2e28be36113ee (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60914b2777a37aee (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8633197b15043a32 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9888251c8b412b17 (" + , " 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_d25cf49865cd7704 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_442e6d7b550a789d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a564a65fb1769d14 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a6cf58bf8bb1530d (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e318865f1ec027c9 (" + , " 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_cca50ef109737d7f (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ccd9d8dd50197038 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4b4b9c131df1446d (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f8cc0b184a4c6fb (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_250fb265f2ed794e (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_324cffda71a1255c (" + , " 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_30432ad610acab12 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3f8d7e680f0dbf5c (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e3c7a3b714b28c13 (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e4bcacb5b8550344 (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_25669dc1a69163e9 (" + , " 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_634083b7e5fc82f4 (" + , " 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_304e841fbbaa1204 (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_789dc9afb7028c50 (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4f7d881b9d80304a (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1797f1b1136296c1 (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_abe6df94c5afe7ea (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bab9b6ea680a204b (" + , " 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_5213b6acf50dab24 (" + , " 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_63969a845ff6a62a (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8756686ef6a8c90e (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1679e6ff65043358 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1c1cd4e9f022f4c1 (" + , " 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_5ba5a4609c194724 (" + , " 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_aa8280581455970c (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_947fbc7ffd7fa77b (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_43b419e431479e40 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e8ef15df6f33339f (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c1f5a1e7c2e1bb0c (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_77d9c1dd72b43ac5 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a52dd7d7a0842f0f (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_57efd416db1c6ab5 (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1f7d3ba62496de5c (" + , " 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_b447641d41bdfde2 (" + , " 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_b15baf01e3e1d967 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54ba3ab12a74db33 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a7813fab639c8b41 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dbf26034007b93fe (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7ca502063f115b03 (" + , " 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_6cb8e08ab957b8a4 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3e4e0a07c3ed9ca4 (" + , " 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_f9eb174a4597ee05 (" + , " 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_e350320488e10db1 (" + , " 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_fe63a0f7e63bd3fa (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b4956805fa52d61a (" + , " 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_a4d40ef752b6742e (" + , " 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_b18e1cd50cbea16d (" + , " 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_53695e0c047ae644 (" + , " 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_e792c09bbe5cefb7 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_11e6a276149c07cd (" + , " 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_a1d0b42cd2866182 (" + , " 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_3b24ec2a8c143903 (" + , " 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_cd788f5b91927dde (" + , " 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_f9c21edeec5cf22a (" + , " 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_49f853d1ee5944d6 (" + , " 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_7fb8172d8753e12e (" + , " 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_b168853615c3f9ba (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3af8bc7a27de7709 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_22e339fbb78ca4fa (" + , " 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_fbfea88dd69f52a3 (" + , " 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_26144a06bef35180 (" + , " 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_4ef0235698b750a9 (" + , " 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_13de96509b4b414d (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_609de378608453e4 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_210f9e5a2a12b6a0 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f653c4c7b217f9c5 (" + , " 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_624fcff6acd247dd (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5672847d78310fef (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b071ffd53511ba6b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_03e892db79997729 (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c11e14f8d6add764 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1177dbe7595386b6 (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_898f64982bb7c846 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f786b49bca53f48e (" + , " 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_6c6d3139d39f8d0c (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d611b9635a90b92 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_49b055da02cee7e5 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6ae8449e63a8aaeb (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f4318c987d3b2dc5 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_537f189157f9eda9 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6b19bd9a56228bdb (" + , " 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_b4925eed36e07404 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd8f446c833d6205 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2906dd10c68051ac (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e3b2c4b05de33695 (" + , " 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_e6675289232fdd75 (" + , " 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_36aceb7f6566ff2e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3538b05e4c2bcebf (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_692ef7150c9a174d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c97ddb226d23ca49 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ae675e2bf53934d7 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_165a7641b488b0ed (" + , " 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_c8b6e86a65f25066 (" + , " 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_89e1b1eb6befae08 (" + , " 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_d933948410af3ccc (" + , " 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_28a94f4fbe04a11a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e6d170bc232cabf1 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3813de62b987ab73 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60b3299ea3ea841c (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_049d554c12ae082d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39ad028a49be1707 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_87210c7585e41423 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6e52fac2d9228a18 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_56fea074e5643760 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ed76a60e8f743bad (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ceda76448580cb70 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c1b13bea1244aed8 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e141736f41115a8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4393f736498e65b1 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5908e3acce9209ff (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ed744271b217827 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b137ef067a3bdc3b (" + , " 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_83c8b95d1c273fcd (" + , " 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_ca9a8e1e64c7be30 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e87293a333b79597 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1623c78e64450946 (" + , " 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_0be540358643b870 (" + , " 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_4c842c6885cf96d8 (" + , " 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_64a65397773f21e4 (" + , " 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_514d2a56a1006379 (" + , " 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_1d3c65dd47d1526e (" + , " 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_0362eb4bb68ec3a3 (" + , " 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_33b0e017dbdcd835 (" + , " 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_bc3f7d6abdbdbb12 (" + , " 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_899e82b6bb8ea17c (" + , " 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_c36186a11cbdd5cc (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_7097b12c6344bf78 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_80adaffe2d6a5787 (" + , " 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_7a58cd127a1b71e8 (" + , " 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_69d5f07ca78d1b73 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_08861c14f5cd3f8c (" + , " 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_23f5c091befd272d (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_74c90b5226148668 (" + , " 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_ce444b4b77cc7273 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ceba776a6a8afad6 (" + , " 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_59320618e720e302 (" + , " 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_9a2fa76f8c60c723 (" + , " 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_91987baf45875763 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_230444438b6d6f12 (" + , " 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_fc6bfb10a83e7262 (" + , " 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_62ca366d8c8815dd (" + , " 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_f14fead0d8774385 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d487a7aabd6b8f83 (" + , " 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_d3df3c25d12136db (" + , " 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_801dc71c9af7cd7d (" + , " 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_00261ab86c3d65d1 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_802be489c5021e29 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bd2c889d9792009a (" + , " 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_bd47626e824ae949 (" + , " 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_0d1f522ef6f8d99b (" + , " 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_d57d42f7a3587782 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bd0347394c73e973 (" + , " 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_198fe51b49137876 (" + , " 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_08ad2fd69de742a1 (" + , " 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_a3049a24ff3506bc (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fde31d512533d6a7 (" + , " 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_c014baa76ac8e4f8 (" + , " 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_59585443e5728dea (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e177cabfd07cc7cb (" + , " 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_e43b9a882369dddb (" + , " 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_12359682dda3bf73 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7ab81c614a893e42 (" + , " 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_dc8336d22650a55a (" + , " 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_2a2829a7bcbaf9ed (" + , " 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_81c10a2f0fd16bea (" + , " 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_81e8f0aa1ccc5ce1 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2e1009a20f8e5bd1 (" + , " 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_fec6cba0899460ff (" + , " 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_0f0cfb04cc733536 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f2755abb679378be (" + , " 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_f9305c3788843e07 (" + , " 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_161b1294725df7e7 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c8270ef0f6ddc6f (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40907aea12527b3c (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4516acc1d834ce45 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbb5e0961f46ef85 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_07658392643c9a41 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42965d2e309770e0 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_62987c11684c1e3c (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e1ff2630cff05b6f (" + , " 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_246401748f2bec6f (" + , " 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_1a0877957ce85f18 (" + , " 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_2f2b4fcd7e634392 (" + , " 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_51bc5cf3e76679d5 (" + , " 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_253cddac34fc77f0 (" + , " 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_4f3b1be524aad8e7 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_269350807b3e986e (" + , " 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_d137fd84e4b9ed86 (" + , " 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_057ed813fce3174c (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_86adef059549dab1 (" + , " 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_f55257c0b056dfa5 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_437a90c41ddd2478 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cc67c9d2e72476a6 (" + , " 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_1ea00111564e6658 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_2f8273b59d554056 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_805f9c17970e6d27 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_148c98ad67124a65 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a3887678d0bd9985 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cb591e6747c173c8 (" + , " 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_c8e4fa7b0e59ec9d (" + , " 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_707f62977330528c (" + , " 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_3f68cacce7db6ffe (" + , " 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_9c90c919654696df (" + , " 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_d76f000291322418 (" + , " 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_7b2b5a587d844a61 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a31a8be8d9d37108 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d0ea7c7817f2e751 (" + , " 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_9b0e5c89f7dcc953 (" + , " 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_edf08028cbb9e25c (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4ea5e378d127d954 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4c76fbefc8e8d788 (" + , " 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_176c8a205c375e2a (" + , " 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_fc70cd81f22f246a (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7e5f83ae7a1754a3 (" + , " 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_0757df6a0bdaede2 (" + , " 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_9042ee9fdd35067e (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_56515733b370e2c3 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4656105750ff77dc (" + , " 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_494b247f1686cbfb (" + , " 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_52bf11069c393de6 (" + , " 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_90f0e887c4a955de (" + , " 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_5b1968529c542c38 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2bdd689208b2a5a9 (" + , " 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_aa8e974bb8615910 (" + , " 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_bf1cefb478c2ae07 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_00c79932df67c930 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d6f7374dedf9888d (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c0a7991097d704f7 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_29c0a4c4af63eaeb (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b4c9cdc8a77e1294 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6cf327e864012703 (" + , " 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_d6f38c4a7905cf83 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d06195dadfb08364 (" + , " 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_82c1f1783b84ed37 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e384515070e4fe1b (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_2bc452774083249e" hs_bindgen_2bc452774083249e :: + 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:174: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_2bc452774083249e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_0e637be71f1b4111" hs_bindgen_0e637be71f1b4111 :: + 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:183: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_0e637be71f1b4111 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_743359e347b5efff" hs_bindgen_743359e347b5efff :: + 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:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_743359e347b5efff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_960f70b1397491fe" hs_bindgen_960f70b1397491fe :: + 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:196: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_960f70b1397491fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_0cba498b288ca600" hs_bindgen_0cba498b288ca600 :: + 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:201:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_0cba498b288ca600 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_57a52260eb910e53" hs_bindgen_57a52260eb910e53 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_57a52260eb910e53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_3358665ae56b8d43" hs_bindgen_3358665ae56b8d43 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:211:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_3358665ae56b8d43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_29e2e5a59529dad6" hs_bindgen_29e2e5a59529dad6 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:216:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_29e2e5a59529dad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_e102bc46fe29bd6c" hs_bindgen_e102bc46fe29bd6c :: + 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:223:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_e102bc46fe29bd6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_983dc0dcb713f85c" hs_bindgen_983dc0dcb713f85c :: + 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:228: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_983dc0dcb713f85c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_cfc517b7ef9d31b6" hs_bindgen_cfc517b7ef9d31b6 :: + 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:234: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_cfc517b7ef9d31b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_a52d4552b0b34095" hs_bindgen_a52d4552b0b34095 :: + 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:240: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_a52d4552b0b34095 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_c3540eef8c1fe045" hs_bindgen_c3540eef8c1fe045 :: + 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:255: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_c3540eef8c1fe045 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_74f83d883ba1794a" hs_bindgen_74f83d883ba1794a :: + 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:265: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_74f83d883ba1794a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_196806b5fa220356" hs_bindgen_196806b5fa220356 :: + 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:277: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_196806b5fa220356 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_f047dd5fd415cfb0" hs_bindgen_f047dd5fd415cfb0 :: + 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:282: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_f047dd5fd415cfb0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_1ab681f4740dc6ec" hs_bindgen_1ab681f4740dc6ec :: + 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:301: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_1ab681f4740dc6ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_2e2adf6dbc00fcfb" hs_bindgen_2e2adf6dbc00fcfb :: + 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:313: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_2e2adf6dbc00fcfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_6073f4f9d17dafdc" hs_bindgen_6073f4f9d17dafdc :: + 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:328: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_6073f4f9d17dafdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_2168facd4330923d" hs_bindgen_2168facd4330923d :: + 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:337: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_2168facd4330923d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_98301f9a446623d5" hs_bindgen_98301f9a446623d5 :: + 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:347: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_98301f9a446623d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_e9fb6a2dfc48fc0b" hs_bindgen_e9fb6a2dfc48fc0b :: + 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:357: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_e9fb6a2dfc48fc0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_272f6a01510bbcb7" hs_bindgen_272f6a01510bbcb7 :: + 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:367: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_272f6a01510bbcb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_2762c372f965496e" hs_bindgen_2762c372f965496e :: + 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:374: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_2762c372f965496e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_6e10cf2c68c08ae5" hs_bindgen_6e10cf2c68c08ae5 :: + 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:388: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_6e10cf2c68c08ae5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_60c8ff46d965e796" hs_bindgen_60c8ff46d965e796 :: + 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:396: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_60c8ff46d965e796 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_ff7ef297a896024f" hs_bindgen_ff7ef297a896024f :: + 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:404: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_ff7ef297a896024f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_09a9b96c09642283" hs_bindgen_09a9b96c09642283 :: + 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:412: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_09a9b96c09642283 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_bc057cbcd0d6f4ac" hs_bindgen_bc057cbcd0d6f4ac :: + 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:421: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_bc057cbcd0d6f4ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_022a2b7f8acbe3fa" hs_bindgen_022a2b7f8acbe3fa :: + 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:431: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_022a2b7f8acbe3fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_61f8677072ad94fc" hs_bindgen_61f8677072ad94fc :: + 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:439: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_61f8677072ad94fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_e3a5a50441398ce3" hs_bindgen_e3a5a50441398ce3 :: + 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:446: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_e3a5a50441398ce3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_2dd4fa51626f63ef" hs_bindgen_2dd4fa51626f63ef :: + 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:454: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_2dd4fa51626f63ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_671498e6d9417292" hs_bindgen_671498e6d9417292 :: + 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:469: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_671498e6d9417292 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_5054a61a232291a8" hs_bindgen_5054a61a232291a8 :: + 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:477: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_5054a61a232291a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_ec1ec72565811f12" hs_bindgen_ec1ec72565811f12 :: + 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:486: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_ec1ec72565811f12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_63f587d1d76b3f0f" hs_bindgen_63f587d1d76b3f0f :: + 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:495: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_63f587d1d76b3f0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_598d2d80ca34a720" hs_bindgen_598d2d80ca34a720 :: + 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:504: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_598d2d80ca34a720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_3ee21e6d49a5bea0" hs_bindgen_3ee21e6d49a5bea0 :: + 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:514: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_3ee21e6d49a5bea0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_64e884268f72f961" hs_bindgen_64e884268f72f961 :: + 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:522: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_64e884268f72f961 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_efee1b6cd8b5ce80" hs_bindgen_efee1b6cd8b5ce80 :: + 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:530: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_efee1b6cd8b5ce80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5b74689c019d08b6" hs_bindgen_5b74689c019d08b6 :: + 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:540: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_5b74689c019d08b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_61c8dcbccc5694f6" hs_bindgen_61c8dcbccc5694f6 :: + 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:550: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_61c8dcbccc5694f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_9816cd336a3c6da8" hs_bindgen_9816cd336a3c6da8 :: + 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:564: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_9816cd336a3c6da8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_df1976dab158824a" hs_bindgen_df1976dab158824a :: + 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:569: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_df1976dab158824a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_3789d1702d88038a" hs_bindgen_3789d1702d88038a :: + 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:574: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_3789d1702d88038a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_57d63a4d06fb1128" hs_bindgen_57d63a4d06fb1128 :: + 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:579: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_57d63a4d06fb1128 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_1a38e5eb08ed1335" hs_bindgen_1a38e5eb08ed1335 :: + 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:584: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_1a38e5eb08ed1335 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_d4494f6232871a6b" hs_bindgen_d4494f6232871a6b :: + 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:589: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_d4494f6232871a6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_3a78cb7a2abcd8b4" hs_bindgen_3a78cb7a2abcd8b4 :: + 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:596: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_3a78cb7a2abcd8b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_74dec949422623f1" hs_bindgen_74dec949422623f1 :: + 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:601: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_74dec949422623f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_3bc7fd900444c5bf" hs_bindgen_3bc7fd900444c5bf :: + 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:607: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_3bc7fd900444c5bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_40594978444acf32" hs_bindgen_40594978444acf32 :: + 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:613: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_40594978444acf32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_082e4a41fd34de58" hs_bindgen_082e4a41fd34de58 :: + 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:619:5@ + +__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_082e4a41fd34de58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_9ef22e3ad5475a8d" hs_bindgen_9ef22e3ad5475a8d :: + 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:625:5@ + +__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_9ef22e3ad5475a8d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_c9a2acec05ca55ff" hs_bindgen_c9a2acec05ca55ff :: + 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:630: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_c9a2acec05ca55ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_ee47cd3078aac062" hs_bindgen_ee47cd3078aac062 :: + 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:640:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_ee47cd3078aac062 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_c279780c6fe69cbb" hs_bindgen_c279780c6fe69cbb :: + 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:645: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_c279780c6fe69cbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_a9ce096b9481a04c" hs_bindgen_a9ce096b9481a04c :: + 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:650: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_a9ce096b9481a04c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_d2a21969e3248a89" hs_bindgen_d2a21969e3248a89 :: + 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_d2a21969e3248a89 + +{-| + + 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:677: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_d2a21969e3248a89 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_67861d3252a6353b" hs_bindgen_67861d3252a6353b :: + 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:689:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_67861d3252a6353b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_ee636f61c637ddeb" hs_bindgen_ee636f61c637ddeb :: + 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:695:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_ee636f61c637ddeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_1dd7862941573628" hs_bindgen_1dd7862941573628 :: + 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_1dd7862941573628 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:714: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_1dd7862941573628 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_051486d977e65f89" hs_bindgen_051486d977e65f89 :: + 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_051486d977e65f89 + +{-| 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:747: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_051486d977e65f89 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_783b6a39cbf6a033" hs_bindgen_783b6a39cbf6a033 :: + 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_783b6a39cbf6a033 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:771: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_783b6a39cbf6a033 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_89692983c2efabee" hs_bindgen_89692983c2efabee :: + 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_89692983c2efabee + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:798: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_89692983c2efabee x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_6a2d4bd083a96c4a" hs_bindgen_6a2d4bd083a96c4a :: + 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_6a2d4bd083a96c4a + +{-| 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:817: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_6a2d4bd083a96c4a x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_4ebf5819dce0e94d" hs_bindgen_4ebf5819dce0e94d :: + 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_4ebf5819dce0e94d + +{-| 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:840: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_4ebf5819dce0e94d 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_8_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_43c35abb50c68b81" hs_bindgen_43c35abb50c68b81 :: + 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:858: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_43c35abb50c68b81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_41c8c9195808f6c7" hs_bindgen_41c8c9195808f6c7 :: + 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:864: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_41c8c9195808f6c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_bc7a5d4346f1024d" hs_bindgen_bc7a5d4346f1024d :: + 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:870: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_bc7a5d4346f1024d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_0effe626c156f2d4" hs_bindgen_0effe626c156f2d4 :: + 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_0effe626c156f2d4 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:875: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_0effe626c156f2d4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_84f3ca329bf48458" hs_bindgen_84f3ca329bf48458 :: + 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:881: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_84f3ca329bf48458 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_7a268aac1d392431" hs_bindgen_7a268aac1d392431 :: + 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_7a268aac1d392431 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:887: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_7a268aac1d392431 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_3d6fefc7c1259ef0" hs_bindgen_3d6fefc7c1259ef0 :: + 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_3d6fefc7c1259ef0 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:893: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_3d6fefc7c1259ef0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_b20cd08fc27010c3" hs_bindgen_b20cd08fc27010c3 :: + 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:901: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_b20cd08fc27010c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5571ccb77fa6c84c" hs_bindgen_5571ccb77fa6c84c :: + 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:911: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_5571ccb77fa6c84c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_7554ef3df84d1c3a" hs_bindgen_7554ef3df84d1c3a :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:924: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_7554ef3df84d1c3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_d6ec162fc26eb3ec" hs_bindgen_d6ec162fc26eb3ec :: + 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:930:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_d6ec162fc26eb3ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_6dcbddedbc8e9453" hs_bindgen_6dcbddedbc8e9453 :: + 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:935: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_6dcbddedbc8e9453 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_4ab532d4648b18f6" hs_bindgen_4ab532d4648b18f6 :: + 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:940:28@ + +__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_4ab532d4648b18f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_415cd7a1ac43794d" hs_bindgen_415cd7a1ac43794d :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:945:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_415cd7a1ac43794d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_e9acd1e36d3da83e" hs_bindgen_e9acd1e36d3da83e :: + 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:950: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_e9acd1e36d3da83e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_36ab76a64f5a2ebb" hs_bindgen_36ab76a64f5a2ebb :: + 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:955: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_36ab76a64f5a2ebb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_cecc94af86e6bd7b" hs_bindgen_cecc94af86e6bd7b :: + 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:960: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_cecc94af86e6bd7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_eb06ab63d2b8608d" hs_bindgen_eb06ab63d2b8608d :: + 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:966: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_eb06ab63d2b8608d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_51df8b389b5ec7c5" hs_bindgen_51df8b389b5ec7c5 :: + 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:971: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_51df8b389b5ec7c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_55cd78cb6a31b04b" hs_bindgen_55cd78cb6a31b04b :: + 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:976: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_55cd78cb6a31b04b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_25816a865ebebfe0" hs_bindgen_25816a865ebebfe0 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:981: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_25816a865ebebfe0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_d64b7724d8161baa" hs_bindgen_d64b7724d8161baa :: + 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_d64b7724d8161baa + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:986: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_d64b7724d8161baa x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_d0483c30fd6c4c18" hs_bindgen_d0483c30fd6c4c18 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:991: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_d0483c30fd6c4c18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_09adce5d43621c26" hs_bindgen_09adce5d43621c26 :: + 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:998: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_09adce5d43621c26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_92cb6c150e11586b" hs_bindgen_92cb6c150e11586b :: + 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:1003: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_92cb6c150e11586b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_169e614b11358b06" hs_bindgen_169e614b11358b06 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1005: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_169e614b11358b06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_6a96afbe93767259" hs_bindgen_6a96afbe93767259 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1007: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_6a96afbe93767259 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_467a36372cd272ea" hs_bindgen_467a36372cd272ea :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1009: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_467a36372cd272ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_ac74fa1843a14c52" hs_bindgen_ac74fa1843a14c52 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1010: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_ac74fa1843a14c52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_814201a96cf691ad" hs_bindgen_814201a96cf691ad :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1012: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_814201a96cf691ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_bb5cccda94898053" hs_bindgen_bb5cccda94898053 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1013: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_bb5cccda94898053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_5de072ea6d5ef9a6" hs_bindgen_5de072ea6d5ef9a6 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1015: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_5de072ea6d5ef9a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_cc13b5b7b69fd642" hs_bindgen_cc13b5b7b69fd642 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1016: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_cc13b5b7b69fd642 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_084b95c581272fc8" hs_bindgen_084b95c581272fc8 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1017: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_084b95c581272fc8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_114712ea961f5703" hs_bindgen_114712ea961f5703 :: + 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:1020: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_114712ea961f5703 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_6b4c008d2d9ea2df" hs_bindgen_6b4c008d2d9ea2df :: + 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:1023: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_6b4c008d2d9ea2df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_31f2e28be36113ee" hs_bindgen_31f2e28be36113ee :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1030: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_31f2e28be36113ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_60914b2777a37aee" hs_bindgen_60914b2777a37aee :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1037: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_60914b2777a37aee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_8633197b15043a32" hs_bindgen_8633197b15043a32 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1042: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_8633197b15043a32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_9888251c8b412b17" hs_bindgen_9888251c8b412b17 :: + 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:1046: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_9888251c8b412b17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_d25cf49865cd7704" hs_bindgen_d25cf49865cd7704 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1048: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_d25cf49865cd7704 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_442e6d7b550a789d" hs_bindgen_442e6d7b550a789d :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1049: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_442e6d7b550a789d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_a564a65fb1769d14" hs_bindgen_a564a65fb1769d14 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1051: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_a564a65fb1769d14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_a6cf58bf8bb1530d" hs_bindgen_a6cf58bf8bb1530d :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1053: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_a6cf58bf8bb1530d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_e318865f1ec027c9" hs_bindgen_e318865f1ec027c9 :: + 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:1056: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_e318865f1ec027c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_cca50ef109737d7f" hs_bindgen_cca50ef109737d7f :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1058: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_cca50ef109737d7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_ccd9d8dd50197038" hs_bindgen_ccd9d8dd50197038 :: + 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:1065: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_ccd9d8dd50197038 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_4b4b9c131df1446d" hs_bindgen_4b4b9c131df1446d :: + 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:1072: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_4b4b9c131df1446d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_4f8cc0b184a4c6fb" hs_bindgen_4f8cc0b184a4c6fb :: + 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:1077: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_4f8cc0b184a4c6fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_250fb265f2ed794e" hs_bindgen_250fb265f2ed794e :: + 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:1082: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_250fb265f2ed794e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_324cffda71a1255c" hs_bindgen_324cffda71a1255c :: + 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:1100: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_324cffda71a1255c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_30432ad610acab12" hs_bindgen_30432ad610acab12 :: + 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:1111: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_30432ad610acab12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_3f8d7e680f0dbf5c" hs_bindgen_3f8d7e680f0dbf5c :: + 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:1122:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_3f8d7e680f0dbf5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_e3c7a3b714b28c13" hs_bindgen_e3c7a3b714b28c13 :: + 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)/__]: hanlder 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:1130:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: hanlder 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_e3c7a3b714b28c13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_e4bcacb5b8550344" hs_bindgen_e4bcacb5b8550344 :: + 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:1136: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_e4bcacb5b8550344 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_25669dc1a69163e9" hs_bindgen_25669dc1a69163e9 :: + 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:1141: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_25669dc1a69163e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_634083b7e5fc82f4" hs_bindgen_634083b7e5fc82f4 :: + 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:1146: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_634083b7e5fc82f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_304e841fbbaa1204" hs_bindgen_304e841fbbaa1204 :: + 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:1153: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_304e841fbbaa1204 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_789dc9afb7028c50" hs_bindgen_789dc9afb7028c50 :: + 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:1160: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_789dc9afb7028c50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_4f7d881b9d80304a" hs_bindgen_4f7d881b9d80304a :: + 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:1171: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_4f7d881b9d80304a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_1797f1b1136296c1" hs_bindgen_1797f1b1136296c1 :: + 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:1178: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_1797f1b1136296c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_abe6df94c5afe7ea" hs_bindgen_abe6df94c5afe7ea :: + 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:1185: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_abe6df94c5afe7ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_bab9b6ea680a204b" hs_bindgen_bab9b6ea680a204b :: + 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:1201: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_bab9b6ea680a204b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_5213b6acf50dab24" hs_bindgen_5213b6acf50dab24 :: + 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:1217: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_5213b6acf50dab24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_63969a845ff6a62a" hs_bindgen_63969a845ff6a62a :: + 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:1225: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_63969a845ff6a62a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_8756686ef6a8c90e" hs_bindgen_8756686ef6a8c90e :: + 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:1233: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_8756686ef6a8c90e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_1679e6ff65043358" hs_bindgen_1679e6ff65043358 :: + 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:1241: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_1679e6ff65043358 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_1c1cd4e9f022f4c1" hs_bindgen_1c1cd4e9f022f4c1 :: + 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:1247: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_1c1cd4e9f022f4c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_5ba5a4609c194724" hs_bindgen_5ba5a4609c194724 :: + 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:1253: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_5ba5a4609c194724 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_aa8280581455970c" hs_bindgen_aa8280581455970c :: + 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:1258: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_aa8280581455970c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_947fbc7ffd7fa77b" hs_bindgen_947fbc7ffd7fa77b :: + 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:1263: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_947fbc7ffd7fa77b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_43b419e431479e40" hs_bindgen_43b419e431479e40 :: + 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:1268: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_43b419e431479e40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_e8ef15df6f33339f" hs_bindgen_e8ef15df6f33339f :: + 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:1273: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_e8ef15df6f33339f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_c1f5a1e7c2e1bb0c" hs_bindgen_c1f5a1e7c2e1bb0c :: + 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:1278: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_c1f5a1e7c2e1bb0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_77d9c1dd72b43ac5" hs_bindgen_77d9c1dd72b43ac5 :: + 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:1283: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_77d9c1dd72b43ac5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_a52dd7d7a0842f0f" hs_bindgen_a52dd7d7a0842f0f :: + 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:1288: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_a52dd7d7a0842f0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_57efd416db1c6ab5" hs_bindgen_57efd416db1c6ab5 :: + 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:1295: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_57efd416db1c6ab5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_1f7d3ba62496de5c" hs_bindgen_1f7d3ba62496de5c :: + 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:1311: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_1f7d3ba62496de5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_b447641d41bdfde2" hs_bindgen_b447641d41bdfde2 :: + 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:1321: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_b447641d41bdfde2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_b15baf01e3e1d967" hs_bindgen_b15baf01e3e1d967 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1325: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_b15baf01e3e1d967 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_54ba3ab12a74db33" hs_bindgen_54ba3ab12a74db33 :: + 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:1328: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_54ba3ab12a74db33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_a7813fab639c8b41" hs_bindgen_a7813fab639c8b41 :: + 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:1330: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_a7813fab639c8b41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_dbf26034007b93fe" hs_bindgen_dbf26034007b93fe :: + 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:1332: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_dbf26034007b93fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_7ca502063f115b03" hs_bindgen_7ca502063f115b03 :: + 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:1334: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_7ca502063f115b03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_6cb8e08ab957b8a4" hs_bindgen_6cb8e08ab957b8a4 :: + 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:1336: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_6cb8e08ab957b8a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_3e4e0a07c3ed9ca4" hs_bindgen_3e4e0a07c3ed9ca4 :: + 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:1356: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_3e4e0a07c3ed9ca4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_f9eb174a4597ee05" hs_bindgen_f9eb174a4597ee05 :: + 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:1378: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_f9eb174a4597ee05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_e350320488e10db1" hs_bindgen_e350320488e10db1 :: + 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_e350320488e10db1 + +{-| 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:1386: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_e350320488e10db1 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_fe63a0f7e63bd3fa" hs_bindgen_fe63a0f7e63bd3fa :: + 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:1391:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_fe63a0f7e63bd3fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_b4956805fa52d61a" hs_bindgen_b4956805fa52d61a :: + 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:1405: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_b4956805fa52d61a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_a4d40ef752b6742e" hs_bindgen_a4d40ef752b6742e :: + 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:1410: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_a4d40ef752b6742e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_b18e1cd50cbea16d" hs_bindgen_b18e1cd50cbea16d :: + 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:1415: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_b18e1cd50cbea16d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_53695e0c047ae644" hs_bindgen_53695e0c047ae644 :: + 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:1420: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_53695e0c047ae644 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_e792c09bbe5cefb7" hs_bindgen_e792c09bbe5cefb7 :: + 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:1422: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_e792c09bbe5cefb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_11e6a276149c07cd" hs_bindgen_11e6a276149c07cd :: + 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:1429: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_11e6a276149c07cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_a1d0b42cd2866182" hs_bindgen_a1d0b42cd2866182 :: + 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:1445: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_a1d0b42cd2866182 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_3b24ec2a8c143903" hs_bindgen_3b24ec2a8c143903 :: + 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:1461: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_3b24ec2a8c143903 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_cd788f5b91927dde" hs_bindgen_cd788f5b91927dde :: + 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:1478: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_cd788f5b91927dde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_f9c21edeec5cf22a" hs_bindgen_f9c21edeec5cf22a :: + 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:1493: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_f9c21edeec5cf22a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_49f853d1ee5944d6" hs_bindgen_49f853d1ee5944d6 :: + 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:1509: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_49f853d1ee5944d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_7fb8172d8753e12e" hs_bindgen_7fb8172d8753e12e :: + 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:1524: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_7fb8172d8753e12e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_b168853615c3f9ba" hs_bindgen_b168853615c3f9ba :: + 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_b168853615c3f9ba + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1535: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_b168853615c3f9ba x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_3af8bc7a27de7709" hs_bindgen_3af8bc7a27de7709 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1537: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_3af8bc7a27de7709 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_22e339fbb78ca4fa" hs_bindgen_22e339fbb78ca4fa :: + 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:1540: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_22e339fbb78ca4fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_fbfea88dd69f52a3" hs_bindgen_fbfea88dd69f52a3 :: + 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:1545: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_fbfea88dd69f52a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_26144a06bef35180" hs_bindgen_26144a06bef35180 :: + 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:1550: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_26144a06bef35180 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_4ef0235698b750a9" hs_bindgen_4ef0235698b750a9 :: + 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:1555: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_4ef0235698b750a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_13de96509b4b414d" hs_bindgen_13de96509b4b414d :: + 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:1557: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_13de96509b4b414d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_609de378608453e4" hs_bindgen_609de378608453e4 :: + 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:1562: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_609de378608453e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_210f9e5a2a12b6a0" hs_bindgen_210f9e5a2a12b6a0 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1564: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_210f9e5a2a12b6a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_f653c4c7b217f9c5" hs_bindgen_f653c4c7b217f9c5 :: + 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:1567: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_f653c4c7b217f9c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_624fcff6acd247dd" hs_bindgen_624fcff6acd247dd :: + 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:1572:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_624fcff6acd247dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_5672847d78310fef" hs_bindgen_5672847d78310fef :: + 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:1577: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_5672847d78310fef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b071ffd53511ba6b" hs_bindgen_b071ffd53511ba6b :: + 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:1579: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_b071ffd53511ba6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_03e892db79997729" hs_bindgen_03e892db79997729 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1585: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_03e892db79997729 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_c11e14f8d6add764" hs_bindgen_c11e14f8d6add764 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1588: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_c11e14f8d6add764 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_1177dbe7595386b6" hs_bindgen_1177dbe7595386b6 :: + 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:1595: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_1177dbe7595386b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_898f64982bb7c846" hs_bindgen_898f64982bb7c846 :: + 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:1602: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_898f64982bb7c846 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_f786b49bca53f48e" hs_bindgen_f786b49bca53f48e :: + 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:1607: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_f786b49bca53f48e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_6c6d3139d39f8d0c" hs_bindgen_6c6d3139d39f8d0c :: + 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_6c6d3139d39f8d0c + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1609: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_6c6d3139d39f8d0c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_2d611b9635a90b92" hs_bindgen_2d611b9635a90b92 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1612: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_2d611b9635a90b92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_49b055da02cee7e5" hs_bindgen_49b055da02cee7e5 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1614: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_49b055da02cee7e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_6ae8449e63a8aaeb" hs_bindgen_6ae8449e63a8aaeb :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1616: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_6ae8449e63a8aaeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_f4318c987d3b2dc5" hs_bindgen_f4318c987d3b2dc5 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1618: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_f4318c987d3b2dc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_537f189157f9eda9" hs_bindgen_537f189157f9eda9 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1620: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_537f189157f9eda9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_6b19bd9a56228bdb" hs_bindgen_6b19bd9a56228bdb :: + 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:1623: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_6b19bd9a56228bdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_b4925eed36e07404" hs_bindgen_b4925eed36e07404 :: + 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:1625: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_b4925eed36e07404 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_bd8f446c833d6205" hs_bindgen_bd8f446c833d6205 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1628: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_bd8f446c833d6205 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_2906dd10c68051ac" hs_bindgen_2906dd10c68051ac :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1630: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_2906dd10c68051ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_e3b2c4b05de33695" hs_bindgen_e3b2c4b05de33695 :: + 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:1636: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_e3b2c4b05de33695 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_e6675289232fdd75" hs_bindgen_e6675289232fdd75 :: + 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:1639: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_e6675289232fdd75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_36aceb7f6566ff2e" hs_bindgen_36aceb7f6566ff2e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1642: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_36aceb7f6566ff2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_3538b05e4c2bcebf" hs_bindgen_3538b05e4c2bcebf :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1645: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_3538b05e4c2bcebf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_692ef7150c9a174d" hs_bindgen_692ef7150c9a174d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1647: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_692ef7150c9a174d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_c97ddb226d23ca49" hs_bindgen_c97ddb226d23ca49 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1649: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_c97ddb226d23ca49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_ae675e2bf53934d7" hs_bindgen_ae675e2bf53934d7 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1651: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_ae675e2bf53934d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_165a7641b488b0ed" hs_bindgen_165a7641b488b0ed :: + 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:1666: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_165a7641b488b0ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_c8b6e86a65f25066" hs_bindgen_c8b6e86a65f25066 :: + 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:1680: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_c8b6e86a65f25066 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_89e1b1eb6befae08" hs_bindgen_89e1b1eb6befae08 :: + 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:1698: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_89e1b1eb6befae08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_d933948410af3ccc" hs_bindgen_d933948410af3ccc :: + 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:1713: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_d933948410af3ccc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_28a94f4fbe04a11a" hs_bindgen_28a94f4fbe04a11a :: + 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_28a94f4fbe04a11a + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1719: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_28a94f4fbe04a11a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_e6d170bc232cabf1" hs_bindgen_e6d170bc232cabf1 :: + 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_e6d170bc232cabf1 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1721: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_e6d170bc232cabf1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_3813de62b987ab73" hs_bindgen_3813de62b987ab73 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1724: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_3813de62b987ab73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_60b3299ea3ea841c" hs_bindgen_60b3299ea3ea841c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1727: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_60b3299ea3ea841c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_049d554c12ae082d" hs_bindgen_049d554c12ae082d :: + 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_049d554c12ae082d + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1733: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_049d554c12ae082d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_39ad028a49be1707" hs_bindgen_39ad028a49be1707 :: + 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_39ad028a49be1707 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1735: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_39ad028a49be1707 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_87210c7585e41423" hs_bindgen_87210c7585e41423 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1738: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_87210c7585e41423 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_6e52fac2d9228a18" hs_bindgen_6e52fac2d9228a18 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1741: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_6e52fac2d9228a18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_56fea074e5643760" hs_bindgen_56fea074e5643760 :: + 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_56fea074e5643760 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1747: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_56fea074e5643760 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_ed76a60e8f743bad" hs_bindgen_ed76a60e8f743bad :: + 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_ed76a60e8f743bad + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1749: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_ed76a60e8f743bad x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_ceda76448580cb70" hs_bindgen_ceda76448580cb70 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1752: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_ceda76448580cb70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_c1b13bea1244aed8" hs_bindgen_c1b13bea1244aed8 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1755: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_c1b13bea1244aed8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_7e141736f41115a8" hs_bindgen_7e141736f41115a8 :: + 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_7e141736f41115a8 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1761: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_7e141736f41115a8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_4393f736498e65b1" hs_bindgen_4393f736498e65b1 :: + 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_4393f736498e65b1 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1763: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_4393f736498e65b1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_5908e3acce9209ff" hs_bindgen_5908e3acce9209ff :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1766: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_5908e3acce9209ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_0ed744271b217827" hs_bindgen_0ed744271b217827 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1769: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_0ed744271b217827 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_b137ef067a3bdc3b" hs_bindgen_b137ef067a3bdc3b :: + 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_b137ef067a3bdc3b + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1776: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_b137ef067a3bdc3b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_83c8b95d1c273fcd" hs_bindgen_83c8b95d1c273fcd :: + 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_83c8b95d1c273fcd + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1779: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_83c8b95d1c273fcd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_ca9a8e1e64c7be30" hs_bindgen_ca9a8e1e64c7be30 :: + 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_ca9a8e1e64c7be30 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1790: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_ca9a8e1e64c7be30 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_e87293a333b79597" hs_bindgen_e87293a333b79597 :: + 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_e87293a333b79597 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1793: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_e87293a333b79597 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_1623c78e64450946" hs_bindgen_1623c78e64450946 :: + 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:1797: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_1623c78e64450946 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_0be540358643b870" hs_bindgen_0be540358643b870 :: + 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:1801: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_0be540358643b870 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_4c842c6885cf96d8" hs_bindgen_4c842c6885cf96d8 :: + 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_4c842c6885cf96d8 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1808: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_4c842c6885cf96d8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_64a65397773f21e4" hs_bindgen_64a65397773f21e4 :: + 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_64a65397773f21e4 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1811: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_64a65397773f21e4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_514d2a56a1006379" hs_bindgen_514d2a56a1006379 :: + 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_514d2a56a1006379 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1818: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_514d2a56a1006379 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_1d3c65dd47d1526e" hs_bindgen_1d3c65dd47d1526e :: + 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_1d3c65dd47d1526e + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1824: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_1d3c65dd47d1526e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_0362eb4bb68ec3a3" hs_bindgen_0362eb4bb68ec3a3 :: + 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_0362eb4bb68ec3a3 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1834: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_0362eb4bb68ec3a3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_33b0e017dbdcd835" hs_bindgen_33b0e017dbdcd835 :: + 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_33b0e017dbdcd835 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1837: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_33b0e017dbdcd835 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_bc3f7d6abdbdbb12" hs_bindgen_bc3f7d6abdbdbb12 :: + 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_bc3f7d6abdbdbb12 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1844: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_bc3f7d6abdbdbb12 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_899e82b6bb8ea17c" hs_bindgen_899e82b6bb8ea17c :: + 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_899e82b6bb8ea17c + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1847: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_899e82b6bb8ea17c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_c36186a11cbdd5cc" hs_bindgen_c36186a11cbdd5cc :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1853: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_c36186a11cbdd5cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_7097b12c6344bf78" hs_bindgen_7097b12c6344bf78 :: + 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:1856: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_7097b12c6344bf78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_80adaffe2d6a5787" hs_bindgen_80adaffe2d6a5787 :: + 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:1859: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_80adaffe2d6a5787 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_7a58cd127a1b71e8" hs_bindgen_7a58cd127a1b71e8 :: + 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:1862: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_7a58cd127a1b71e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_69d5f07ca78d1b73" hs_bindgen_69d5f07ca78d1b73 :: + 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:1865: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_69d5f07ca78d1b73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_08861c14f5cd3f8c" hs_bindgen_08861c14f5cd3f8c :: + 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:1868: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_08861c14f5cd3f8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_23f5c091befd272d" hs_bindgen_23f5c091befd272d :: + 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:1871: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_23f5c091befd272d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_74c90b5226148668" hs_bindgen_74c90b5226148668 :: + 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:1875: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_74c90b5226148668 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_ce444b4b77cc7273" hs_bindgen_ce444b4b77cc7273 :: + 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:1879: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_ce444b4b77cc7273 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_ceba776a6a8afad6" hs_bindgen_ceba776a6a8afad6 :: + 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:1882: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_ceba776a6a8afad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_59320618e720e302" hs_bindgen_59320618e720e302 :: + 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:1889: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_59320618e720e302 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_9a2fa76f8c60c723" hs_bindgen_9a2fa76f8c60c723 :: + 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:1897: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_9a2fa76f8c60c723 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_91987baf45875763" hs_bindgen_91987baf45875763 :: + 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:1902: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_91987baf45875763 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_230444438b6d6f12" hs_bindgen_230444438b6d6f12 :: + 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:1905: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_230444438b6d6f12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_fc6bfb10a83e7262" hs_bindgen_fc6bfb10a83e7262 :: + 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_fc6bfb10a83e7262 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1908: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_fc6bfb10a83e7262 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_62ca366d8c8815dd" hs_bindgen_62ca366d8c8815dd :: + 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:1921: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_62ca366d8c8815dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_f14fead0d8774385" hs_bindgen_f14fead0d8774385 :: + 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:1926: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_f14fead0d8774385 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_d487a7aabd6b8f83" hs_bindgen_d487a7aabd6b8f83 :: + 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:1929: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_d487a7aabd6b8f83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_d3df3c25d12136db" hs_bindgen_d3df3c25d12136db :: + 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_d3df3c25d12136db + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1932: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_d3df3c25d12136db x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_801dc71c9af7cd7d" hs_bindgen_801dc71c9af7cd7d :: + 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:1944: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_801dc71c9af7cd7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_00261ab86c3d65d1" hs_bindgen_00261ab86c3d65d1 :: + 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:1949: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_00261ab86c3d65d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_802be489c5021e29" hs_bindgen_802be489c5021e29 :: + 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:1951: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_802be489c5021e29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_bd2c889d9792009a" hs_bindgen_bd2c889d9792009a :: + 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_bd2c889d9792009a + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1953: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_bd2c889d9792009a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_bd47626e824ae949" hs_bindgen_bd47626e824ae949 :: + 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:1956: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_bd47626e824ae949 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_0d1f522ef6f8d99b" hs_bindgen_0d1f522ef6f8d99b :: + 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:1964: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_0d1f522ef6f8d99b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_d57d42f7a3587782" hs_bindgen_d57d42f7a3587782 :: + 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:1972: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_d57d42f7a3587782 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_bd0347394c73e973" hs_bindgen_bd0347394c73e973 :: + 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_bd0347394c73e973 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1974: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_bd0347394c73e973 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_198fe51b49137876" hs_bindgen_198fe51b49137876 :: + 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_198fe51b49137876 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1975: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_198fe51b49137876 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_08ad2fd69de742a1" hs_bindgen_08ad2fd69de742a1 :: + 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:1983: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_08ad2fd69de742a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_a3049a24ff3506bc" hs_bindgen_a3049a24ff3506bc :: + 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:1988: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_a3049a24ff3506bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_fde31d512533d6a7" hs_bindgen_fde31d512533d6a7 :: + 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:1990: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_fde31d512533d6a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_c014baa76ac8e4f8" hs_bindgen_c014baa76ac8e4f8 :: + 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:1993: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_c014baa76ac8e4f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_59585443e5728dea" hs_bindgen_59585443e5728dea :: + 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:1995: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_59585443e5728dea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_e177cabfd07cc7cb" hs_bindgen_e177cabfd07cc7cb :: + 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_e177cabfd07cc7cb + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1998: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_e177cabfd07cc7cb x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_e43b9a882369dddb" hs_bindgen_e43b9a882369dddb :: + 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:2012: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_e43b9a882369dddb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_12359682dda3bf73" hs_bindgen_12359682dda3bf73 :: + 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:2017: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_12359682dda3bf73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_7ab81c614a893e42" hs_bindgen_7ab81c614a893e42 :: + 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:2020: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_7ab81c614a893e42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_dc8336d22650a55a" hs_bindgen_dc8336d22650a55a :: + 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:2025: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_dc8336d22650a55a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_2a2829a7bcbaf9ed" hs_bindgen_2a2829a7bcbaf9ed :: + 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_2a2829a7bcbaf9ed + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2029: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_2a2829a7bcbaf9ed x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_81c10a2f0fd16bea" hs_bindgen_81c10a2f0fd16bea :: + 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:2042: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_81c10a2f0fd16bea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_81e8f0aa1ccc5ce1" hs_bindgen_81e8f0aa1ccc5ce1 :: + 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:2047: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_81e8f0aa1ccc5ce1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_2e1009a20f8e5bd1" hs_bindgen_2e1009a20f8e5bd1 :: + 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:2050: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_2e1009a20f8e5bd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_fec6cba0899460ff" hs_bindgen_fec6cba0899460ff :: + 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_fec6cba0899460ff + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2055: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_fec6cba0899460ff x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_0f0cfb04cc733536" hs_bindgen_0f0cfb04cc733536 :: + 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:2068: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_0f0cfb04cc733536 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_f2755abb679378be" hs_bindgen_f2755abb679378be :: + 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_f2755abb679378be + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2075: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_f2755abb679378be x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_f9305c3788843e07" hs_bindgen_f9305c3788843e07 :: + 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_f9305c3788843e07 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2090: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_f9305c3788843e07 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_161b1294725df7e7" hs_bindgen_161b1294725df7e7 :: + 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_161b1294725df7e7 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2105: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_161b1294725df7e7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_2c8270ef0f6ddc6f" hs_bindgen_2c8270ef0f6ddc6f :: + 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:2106: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_2c8270ef0f6ddc6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_40907aea12527b3c" hs_bindgen_40907aea12527b3c :: + 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:2111: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_40907aea12527b3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_4516acc1d834ce45" hs_bindgen_4516acc1d834ce45 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2113: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_4516acc1d834ce45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_fbb5e0961f46ef85" hs_bindgen_fbb5e0961f46ef85 :: + 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:2116: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_fbb5e0961f46ef85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_07658392643c9a41" hs_bindgen_07658392643c9a41 :: + 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:2117: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_07658392643c9a41 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_42965d2e309770e0" hs_bindgen_42965d2e309770e0 :: + 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:2119: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_42965d2e309770e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_62987c11684c1e3c" hs_bindgen_62987c11684c1e3c :: + 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:2120: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_62987c11684c1e3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_e1ff2630cff05b6f" hs_bindgen_e1ff2630cff05b6f :: + 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:2123: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_e1ff2630cff05b6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_246401748f2bec6f" hs_bindgen_246401748f2bec6f :: + 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:2125: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_246401748f2bec6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_1a0877957ce85f18" hs_bindgen_1a0877957ce85f18 :: + 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:2126: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_1a0877957ce85f18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_2f2b4fcd7e634392" hs_bindgen_2f2b4fcd7e634392 :: + 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:2127: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_2f2b4fcd7e634392 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_51bc5cf3e76679d5" hs_bindgen_51bc5cf3e76679d5 :: + 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:2129: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_51bc5cf3e76679d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_253cddac34fc77f0" hs_bindgen_253cddac34fc77f0 :: + 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:2132: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_253cddac34fc77f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_4f3b1be524aad8e7" hs_bindgen_4f3b1be524aad8e7 :: + 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:2134: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_4f3b1be524aad8e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_269350807b3e986e" hs_bindgen_269350807b3e986e :: + 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:2137: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_269350807b3e986e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_d137fd84e4b9ed86" hs_bindgen_d137fd84e4b9ed86 :: + 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:2141: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_d137fd84e4b9ed86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_057ed813fce3174c" hs_bindgen_057ed813fce3174c :: + 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:2144: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_057ed813fce3174c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_86adef059549dab1" hs_bindgen_86adef059549dab1 :: + 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:2147: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_86adef059549dab1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_f55257c0b056dfa5" hs_bindgen_f55257c0b056dfa5 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2163: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_f55257c0b056dfa5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_437a90c41ddd2478" hs_bindgen_437a90c41ddd2478 :: + 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:2169: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_437a90c41ddd2478 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_cc67c9d2e72476a6" hs_bindgen_cc67c9d2e72476a6 :: + 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:2180: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_cc67c9d2e72476a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_1ea00111564e6658" hs_bindgen_1ea00111564e6658 :: + 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:2195: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_1ea00111564e6658 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_2f8273b59d554056" hs_bindgen_2f8273b59d554056 :: + 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:2203: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_2f8273b59d554056 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_805f9c17970e6d27" hs_bindgen_805f9c17970e6d27 :: + 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_805f9c17970e6d27 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2205: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_805f9c17970e6d27 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_148c98ad67124a65" hs_bindgen_148c98ad67124a65 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2207: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_148c98ad67124a65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_a3887678d0bd9985" hs_bindgen_a3887678d0bd9985 :: + 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:2213: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_a3887678d0bd9985 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_cb591e6747c173c8" hs_bindgen_cb591e6747c173c8 :: + 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:2220: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_cb591e6747c173c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_c8e4fa7b0e59ec9d" hs_bindgen_c8e4fa7b0e59ec9d :: + 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_c8e4fa7b0e59ec9d + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2238: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_c8e4fa7b0e59ec9d (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_707f62977330528c" hs_bindgen_707f62977330528c :: + 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_707f62977330528c + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2247: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_707f62977330528c (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_3f68cacce7db6ffe" hs_bindgen_3f68cacce7db6ffe :: + 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_3f68cacce7db6ffe + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2255: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_3f68cacce7db6ffe x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_9c90c919654696df" hs_bindgen_9c90c919654696df :: + 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_9c90c919654696df + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2265: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_9c90c919654696df x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_d76f000291322418" hs_bindgen_d76f000291322418 :: + 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_d76f000291322418 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2284: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_d76f000291322418 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_7b2b5a587d844a61" hs_bindgen_7b2b5a587d844a61 :: + 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:2291:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_7b2b5a587d844a61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_a31a8be8d9d37108" hs_bindgen_a31a8be8d9d37108 :: + 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:2297: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_a31a8be8d9d37108 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_d0ea7c7817f2e751" hs_bindgen_d0ea7c7817f2e751 :: + 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:2303: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_d0ea7c7817f2e751 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_9b0e5c89f7dcc953" hs_bindgen_9b0e5c89f7dcc953 :: + 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_9b0e5c89f7dcc953 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2316: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_9b0e5c89f7dcc953 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_edf08028cbb9e25c" hs_bindgen_edf08028cbb9e25c :: + 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:2324:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_edf08028cbb9e25c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_4ea5e378d127d954" hs_bindgen_4ea5e378d127d954 :: + 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:2333: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_4ea5e378d127d954 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_4c76fbefc8e8d788" hs_bindgen_4c76fbefc8e8d788 :: + 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:2344: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_4c76fbefc8e8d788 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_176c8a205c375e2a" hs_bindgen_176c8a205c375e2a :: + 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_176c8a205c375e2a + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2355: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_176c8a205c375e2a x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_fc70cd81f22f246a" hs_bindgen_fc70cd81f22f246a :: + 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:2362:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_fc70cd81f22f246a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_7e5f83ae7a1754a3" hs_bindgen_7e5f83ae7a1754a3 :: + 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_7e5f83ae7a1754a3 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2365: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_7e5f83ae7a1754a3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_0757df6a0bdaede2" hs_bindgen_0757df6a0bdaede2 :: + 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_0757df6a0bdaede2 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2368: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_0757df6a0bdaede2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_9042ee9fdd35067e" hs_bindgen_9042ee9fdd35067e :: + 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:2380: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_9042ee9fdd35067e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_56515733b370e2c3" hs_bindgen_56515733b370e2c3 :: + 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:2388: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_56515733b370e2c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_4656105750ff77dc" hs_bindgen_4656105750ff77dc :: + 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_4656105750ff77dc + +{-| 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:2403: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_4656105750ff77dc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_494b247f1686cbfb" hs_bindgen_494b247f1686cbfb :: + 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_494b247f1686cbfb + +{-| 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:2422: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_494b247f1686cbfb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_52bf11069c393de6" hs_bindgen_52bf11069c393de6 :: + 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_52bf11069c393de6 + +{-| 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:2438: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_52bf11069c393de6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_90f0e887c4a955de" hs_bindgen_90f0e887c4a955de :: + 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_90f0e887c4a955de + +{-| 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:2465: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_90f0e887c4a955de 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_8_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_5b1968529c542c38" hs_bindgen_5b1968529c542c38 :: + 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:2483: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_5b1968529c542c38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_2bdd689208b2a5a9" hs_bindgen_2bdd689208b2a5a9 :: + 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:2504: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_2bdd689208b2a5a9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_aa8e974bb8615910" hs_bindgen_aa8e974bb8615910 :: + 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:2525: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_aa8e974bb8615910 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_bf1cefb478c2ae07" hs_bindgen_bf1cefb478c2ae07 :: + 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:2550:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_bf1cefb478c2ae07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_00c79932df67c930" hs_bindgen_00c79932df67c930 :: + 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:2558: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_00c79932df67c930 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_d6f7374dedf9888d" hs_bindgen_d6f7374dedf9888d :: + 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:2568: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_d6f7374dedf9888d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_c0a7991097d704f7" hs_bindgen_c0a7991097d704f7 :: + 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:2579: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_c0a7991097d704f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_29c0a4c4af63eaeb" hs_bindgen_29c0a4c4af63eaeb :: + 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:2591: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_29c0a4c4af63eaeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_b4c9cdc8a77e1294" hs_bindgen_b4c9cdc8a77e1294 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2598: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_b4c9cdc8a77e1294 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_6cf327e864012703" hs_bindgen_6cf327e864012703 :: + 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:2612: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_6cf327e864012703 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_d6f38c4a7905cf83" hs_bindgen_d6f38c4a7905cf83 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2624: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_d6f38c4a7905cf83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_d06195dadfb08364" hs_bindgen_d06195dadfb08364 :: + 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:2635: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_d06195dadfb08364 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_82c1f1783b84ed37" hs_bindgen_82c1f1783b84ed37 :: + 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:2647: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_82c1f1783b84ed37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_0_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_e384515070e4fe1b" hs_bindgen_e384515070e4fe1b :: + 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:2654: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_e384515070e4fe1b diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1.hs new file mode 100644 index 00000000..ab00ebca --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1.hs @@ -0,0 +1,1705 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_8_1 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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:70:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20250506 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:112: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 + +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:113: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:115: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:117: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:118: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:119: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:121: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:122: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:124: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:125: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:126: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:127: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:129: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:130: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:131: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:132: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:133: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:134: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:136: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:137: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:139: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:140: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:141: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:142: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:144: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:150: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' + +__defined at:__ @botan\/ffi.h:159:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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:159: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:168:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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:168: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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:245:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:287:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:287: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:__ @botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:379:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:379: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:__ @botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:459:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:459: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:__ @botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:555:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:555: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:557: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:558: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:559: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:652: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:__ @botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:853:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:853: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:__ @botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:919:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:919: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:__ @botan_asn1_oid_struct@ + + __defined at:__ @botan\/ffi.h:1117:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_asn1_oid_struct + +{-| __C declaration:__ @botan_asn1_oid_t@ + + __defined at:__ @botan\/ffi.h:1117: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:__ @botan_ec_group_struct@ + + __defined at:__ @botan\/ffi.h:1166:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_ec_group_struct + +{-| __C declaration:__ @botan_ec_group_t@ + + __defined at:__ @botan\/ffi.h:1166: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1300:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1300: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:1323: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:1393: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:1394: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:1395:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1533:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1533: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1894:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1894: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1918:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1918: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:1939:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1941:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1941: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1961:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1961: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1980:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1980: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:2009: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:2009: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:2039: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:2039: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:2103:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:2103: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:2150: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 + +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:2151: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:2152: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:2153: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:2154: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:2155: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:2156: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:2157: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:2158: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:2159: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:2160: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:2201:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:2201: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2278:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2278: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2310:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2310: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2350:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2350: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:2352: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2373: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:2373: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2531:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2531: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2536:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2536: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:__ @botan_tpm2_crypto_backend_state_struct@ + + __defined at:__ @botan\/ffi.h:2541: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:2541: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:__ @ESYS_CONTEXT@ + + __defined at:__ @botan\/ffi.h:2543: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_8_1/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/FunPtr.hs new file mode 100644 index 00000000..788ee02a --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/FunPtr.hs @@ -0,0 +1,10184 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_8_1.FunPtr where + +import Botan.Bindings.Generated.Botan_3_8_1 +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_8_1_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_554f53eb82f1e46f (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_974aed8488dc2a3f (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_bc73a83a9eda2ac7 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1cb414df815a741 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f158cfa3c4ab2a91 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_209aa4212636e3da (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_7bdadca4f1bcc8f5 (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_159b05c35e924f5c (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_5da30d34ad9c5966 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7029eb869e5c96c0 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4987e8e6f40900f9 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8646e67c8ca2a544 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f61de0512c3bd0ac (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8cb328524b5dd71 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_557b96717eb798a3 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c470528faeaf8713 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe1e12411a59c279 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b3cc38f0e97774e (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_8_1_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2863015f1091479 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_23f8e79b8a063b50 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c63d2b81a6fae3e (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7835aa18a1b5e3c0 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_78d8e93d88931367 (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5cb1c99fe9b6a09 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b328ae9220b8245d (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea1373c6baabfc30 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06bcf6e637423d99 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2039a238fef8bf68 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45556e24c77990e0 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ed76f01c4059c851 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27f91c08518168f2 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_986c133acfe6ddf7 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bcd348034533014a (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6c5e38eec861aae (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4d55722e8d3196d (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4de84c11863c2b5 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bce426fdfe105380 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba4947d58c256574 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4160ad6907c04c4 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a794760f7e4e729e (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6a9fc46e00658ae (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_465bad6d7f070043 (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_8_1_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7175044d231cfe2 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4318666d6635d3bf (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a3c560998d2edb1 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e90dfbf5053cd475 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39b6eace6e89837e (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e1d1b6e2c545e4b (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c95ec7739c4e39a (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba38a257db0a7b6f (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8c068e57373ef9df (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a65cc8fbe95317fe (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79b089e4bda0cd4e (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d115f3cd6f6bc8f4 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5fb3702a8191ce98 (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_8_1_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55fbce497899da1f (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c30427ffd12d2e1f (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd7b2688d2a0c7ff (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dae47b4b6d357f4c (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_558a679c50081ba9 (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_8_1_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6144d0b6b679c77 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75cc1a1671174022 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b04a8c3e098f4ef (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_8_1_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_203af346efb0ce1c (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_8_1_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3d31374fcf9f850 (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_8_1_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58a328c1663d4865 (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_8_1_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b448e9dba4010406 (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_8_1_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45865e6ef1b742fb (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_8_1_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f325c5049ef7af6 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a442f28b98003e29 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4fe963af266c900a (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c98a1cff0a64c30 (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_8_1_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64056e9242b9f924 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da6473c56ecb17fc (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_8_1_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_104413df5ef833f8 (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_8_1_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e809c4c259642171 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c38bd91eb773c36e (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_8_1_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1cccb0bc2b808d18 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7253e0c9efb6677c (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5dbf9c14ef944ba (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5f470ee34116a7d (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54f994641aaad673 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ee0ea99b18b2775 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7d99b105ca848c6 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5c38a4314da4b31 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad53c5a9ede05a60 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2361851947e24f6 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dcb793ab24ad2246 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58b4ba2fcfbc57b0 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea97909ab3be75b8 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d3599795edf55f8 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa4879f7a60c18ab (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8681a3ed32fd402d (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22da548f1f6279ff (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1bffda9270fe186f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f7c6dc42b10dcb9 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea229a5fcef4240b (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3aeab5b537646f81 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a17ff88092e908e (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad4f3756d13c2c32 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52c47b1c15651b1a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f4b94183bec95fb (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f423430149fd9537 (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_8_1_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae7d4bfd8c631135 (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_8_1_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_22bb07c7bab510a0 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c7c50afef782efc (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d07a03c746f358af (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6d0e1f562f4fe33 (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_8_1_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49d8107318e4ccaa (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c9eee3cdf60f57f (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f932c519e8a8109 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15b3cc5b879785b5 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13ec5c0c9d1f2b62 (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_8_1_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7da1b93b49caf7f1 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cacc4908e9a38fcf (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d08d82ac24fecb9 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b054e12f7e114493 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4680e85dc07a885a (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea8a8d7e7394b76e (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_8_1_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9bea45020c43237d (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_658b2a35347a05c9 (void)) (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return &botan_oid_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_from_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75da440d33ead3d4 (void)) (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_from_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_register */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8281b6728920bbc1 (void)) (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_register;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_view_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b294bcc501639021 (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_8_1_get_botan_oid_view_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4759cfe07cf7e096 (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_8_1_get_botan_oid_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b06bca6d6f6cc34 (void)) (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_oid_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a4eb3765267f548 (void)) (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return &botan_oid_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76e99ba8e2c96879 (void)) (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return &botan_ec_group_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_supports_application_specific_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06b6e4e956655b07 (void)) (" + , " signed int *arg1" + , ")" + , "{" + , " return &botan_ec_group_supports_application_specific_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_supports_named_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d7a29dfe6a09086a (void)) (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_ec_group_supports_named_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_params */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a738f1fe0c9d5cb (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_8_1_get_botan_ec_group_from_ber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f7357c3a37ffcbd (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_8_1_get_botan_ec_group_from_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fb3c05ad4999926 (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa6d30db306d6c61 (void)) (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_ec_group_from_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57d3b71a91c1c77c (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_057cbdedd254f363 (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_8_1_get_botan_ec_group_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_43a145cd20837431 (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_8_1_get_botan_ec_group_get_curve_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_893de71a78e744e8 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_curve_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e77120d626fec6f (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_a */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1cbd7d7da43c6f7f (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_a;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_b */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35e6c71e59a22099 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_b;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_g_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1360e9d876274694 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_g_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1879828d07448f7 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_order */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d68382000cb5ae83 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_order;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_453ef3dd638a9ea9 (void)) (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d99f56f81348a37b (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_8_1_get_botan_ec_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_afa05342f47723d2 (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_8_1_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_67822e5cbe7990ce (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f64b3fe417ec4021 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51792cd886012fd6 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_adf13bf838ce74b5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_85ff5ff5adae30b3 (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_8_1_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bad78edf2082391 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e18ea23d332b3f2 (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_8_1_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_344bd7cbc5ffa122 (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_8_1_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8cfbb938f1d89445 (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_8_1_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b96d8f7222c7025 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_006dfcead38feece (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01b8abd378d00829 (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_8_1_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b81d886737d6eb0f (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_8_1_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93b5cef5fd5c6287 (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_8_1_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04ce5474c0142fc6 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1354fbbed63fca7d (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_8_1_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa2aefb4a353d7db (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_8_1_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f841ee30b9d3f64c (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_8_1_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2b22b1213302620 (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_8_1_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36ad8e4eafd30d6c (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_8_1_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa715da48ecc6f39 (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_8_1_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2dbbf78cd7050f8a (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_8_1_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7517c63c710289d (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e770a9bd142980d1 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2434c2942df87544 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a639e67bf149bab (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_8_1_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ff26eddd7e17e77 (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_8_1_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e6a67a89887a5a3a (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_8_1_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8485efa960a438d8 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c04dfab1e6c9a737 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f508a13124a22c1f (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c76a724c16e80371 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0b29df5e94c06b5 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5cc609b2fb8ae284 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c6deb386a9d2b69 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a1e7600ae60026b (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_acabd0a9cc08d5a7 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_stateful_operation */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_00ee5328166692e9 (void)) (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_privkey_stateful_operation;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_remaining_operations */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b84c7d3f28b86c02 (void)) (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_privkey_remaining_operations;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5547dfc6d07d577f (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_8_1_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e2dcdc1d45bb292 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a24084c8d9b5568 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4fab38a61e115e87 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8237a9c737717650 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f25479fc2fcd89b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48898bdf4d2700e3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a476200a8f1ee8e5 (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_8_1_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c77e53c9ef5fdbb (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ac6d4cfb1a032e9e (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a5e7ee30f467816 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d81a707643538a5b (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_8_1_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3462a3edeb467510 (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_8_1_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_16642a4738bef926 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf5068b209fd216b (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c5e2b6b2d278b556 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d5cf2c95260cb40 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c3de84dd0036f96a (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97ef63a7bd0f0a40 (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_8_1_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03621ffccc58af8c (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_8_1_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e411e779692b046 (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_8_1_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5473049d8311316 (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_8_1_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ca56163437fb9df (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a377b1fb43394c7b (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1774c4c8ae6b9051 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bad3a7bde84d9af (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_474f8d8947b4cf4d (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf0ffeab316b7a89 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b9f1a76e256a58d (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6074e44342ba5f56 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c21f1ad204b5a4f8 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4df56ae1bdd66548 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_705fa61bb79a062e (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_733a19bf0f8e5d1a (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1de1a907a8f052fa (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_99c9a7c4871e3d7a (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1ead104f31f3e2d (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49b07b278352fadb (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f51469c178eaa694 (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_8_1_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc6080d6ada0a094 (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_8_1_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d8fcca64efd3616 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3cf1425e97069bf4 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e88e1d8a56c85be2 (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_8_1_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_643948781067c3fe (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_8_1_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d7f1ad61ff2477e (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_8_1_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a0c03474cdecb82 (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_8_1_get_botan_privkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a02d86d259bd437b (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_8_1_get_botan_pubkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39a7cbd017234245 (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_8_1_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d94aac28d03d1cc4 (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_8_1_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86493f787362e859 (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_8_1_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a65350f46701a534 (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_8_1_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_846191d3ffb86dcd (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_8_1_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aded3f3659f547e7 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c2818c03f4b836e6 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fbe44384374e807 (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_8_1_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f08746fa407a122f (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_8_1_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e5a62ff79fca3a2 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3242ca1dede84a0f (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_8_1_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e863e5e3b45bd177 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7d7e281bdf019cb7 (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_8_1_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc3d1b9d44788b7d (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9caeecd9bd29d69 (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_8_1_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5632a1d267ba05d0 (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_8_1_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a5986dff1df3e445 (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_8_1_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b0a5a6512fcf99cb (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b12231986db4fa3 (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_8_1_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b2fb5bb77adf3fc (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_8_1_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_188ab231741a6959 (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_8_1_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d61a3f93a7ef3ca6 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f90c5d68c8a8ef1e (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_8_1_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8bd73a3597ec40f4 (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_8_1_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9267a11036585a4b (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_8_1_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b872b07c3e8969d (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd913c48b95a2799 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69b155f2dd665c8f (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_8_1_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3e7d55dd10ef0ee3 (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_8_1_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df533327469b1b5f (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_8_1_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f511fb0fd9b555df (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b25ecd564c2c9f9 (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_8_1_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06a71913152930b4 (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_8_1_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fda38334320f753 (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_8_1_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_52f3f411223fea40 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b4e31283400ed43 (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_8_1_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f335d34760c475e (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_8_1_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87308c06868253f4 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5bff341144506aee (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_8_1_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_892501c95e02b84c (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_8_1_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d268942604fc048 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36c282c5178cfbdc (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_8_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_421d658107f8cfc6 (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_8_1_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c31c82ddcfe448d (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_8_1_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_977c067d10559a80 (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_8_1_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_820f79c31556bafc (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ab0cf4347dc495c4 (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_8_1_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a94a687cee98a15 (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_8_1_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_130df3d535a8ea07 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb558a2ac251a874 (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_8_1_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bed9de8fcac22a3a (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_8_1_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_647b1c77658e604e (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cfb13264a0f72fea (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f689121cf5ee737 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb7fc2b7d0d5bf18 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6466a021d82bc6c (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3fddc687ac3ebb79 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a40f42c7d9a502e4 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6017562c8ec2bc42 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a6dd3407e674dccf (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_8_1_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_192161ed9873b432 (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_8_1_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e29e70a5252974ca (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_8_1_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1dc607ee1fc8196e (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_8_1_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6151282f358ba157 (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_8_1_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_414a12589ac2c995 (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_8_1_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e7fddcea64d0350 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86dace42bf5305d4 (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_8_1_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_055e2249d76b2847 (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_8_1_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1258fd5e3270ee9 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d36b198a162fbe92 (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_8_1_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_11542461d2df277b (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c90a803fc0be3c35 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27b4244a56282ee5 (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_8_1_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_15cf572a7a41f604 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd141b386208cffe (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6bca337f926b497 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_848c757253e99f7a (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ed229457902d9761 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1e097deb4835dc5 (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_8_1_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db6511b7d5c71c3a (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_8_1_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa75a8f836e576c2 (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_8_1_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b871639e95805869 (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_8_1_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_657d1785a1677f07 (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_8_1_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7b8604cb963e20d (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_8_1_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f91f506ca67c5bc5 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a587ce3b77453ce (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0a05ae62a43c597 (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_8_1_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50faf5f2cf36ee83 (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_8_1_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bc8c8fc70a2fbe5 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a22ddb5a8cb0eba (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6700446b4f5d6b26 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae758333553a3bcb (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_8_1_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7981a019b6bf2622 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4cc607b3402fd933 (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_8_1_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae183694dd03b131 (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_8_1_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38f150e93bd1d1f1 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b36f490ca1897249 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a19b08be54f2ed5c (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_8_1_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6a1df0fa8ffd02e (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_8_1_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc68bf12b98de9fc (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_8_1_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d609897da9d59504 (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_8_1_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87522fb3c93fb790 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37ddf656b8f5255c (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_8_1_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1780ae70260ce35d (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_8_1_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f6ab290d4418e9c (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_303be3e2d1968d7b (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5cc854c9379f5665 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_from_esys */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ed617f4fa6477989 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_from_esys;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_323e1b7cde99b77e (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3377bfd3a62e01da (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36dcfafccc206144 (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_8_1_get_botan_tpm2_crypto_backend_state_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da41f815f6ac71ab (void)) (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return &botan_tpm2_crypto_backend_state_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_13cee8a4b5957d29 (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_8_1_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24900c26a871c17f (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf96e8690bb97821 (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_554f53eb82f1e46f" hs_bindgen_554f53eb82f1e46f :: + 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:174: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_554f53eb82f1e46f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_974aed8488dc2a3f" hs_bindgen_974aed8488dc2a3f :: + 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:183: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_974aed8488dc2a3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_bc73a83a9eda2ac7" hs_bindgen_bc73a83a9eda2ac7 :: + 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:190: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_bc73a83a9eda2ac7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_f1cb414df815a741" hs_bindgen_f1cb414df815a741 :: + 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:196: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_f1cb414df815a741 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_f158cfa3c4ab2a91" hs_bindgen_f158cfa3c4ab2a91 :: + 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:201: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_f158cfa3c4ab2a91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_209aa4212636e3da" hs_bindgen_209aa4212636e3da :: + 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:206: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_209aa4212636e3da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_7bdadca4f1bcc8f5" hs_bindgen_7bdadca4f1bcc8f5 :: + 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:211: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_7bdadca4f1bcc8f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_159b05c35e924f5c" hs_bindgen_159b05c35e924f5c :: + 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:216: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_159b05c35e924f5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_5da30d34ad9c5966" hs_bindgen_5da30d34ad9c5966 :: + 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:223: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_5da30d34ad9c5966 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_7029eb869e5c96c0" hs_bindgen_7029eb869e5c96c0 :: + 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:228: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_7029eb869e5c96c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_4987e8e6f40900f9" hs_bindgen_4987e8e6f40900f9 :: + 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:234: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_4987e8e6f40900f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_8646e67c8ca2a544" hs_bindgen_8646e67c8ca2a544 :: + 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:240: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_8646e67c8ca2a544 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_f61de0512c3bd0ac" hs_bindgen_f61de0512c3bd0ac :: + 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:255: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_f61de0512c3bd0ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_a8cb328524b5dd71" hs_bindgen_a8cb328524b5dd71 :: + 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:265: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_a8cb328524b5dd71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_557b96717eb798a3" hs_bindgen_557b96717eb798a3 :: + 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:277: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_557b96717eb798a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_c470528faeaf8713" hs_bindgen_c470528faeaf8713 :: + 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:282: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_c470528faeaf8713 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_fe1e12411a59c279" hs_bindgen_fe1e12411a59c279 :: + 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:301: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_fe1e12411a59c279 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_7b3cc38f0e97774e" hs_bindgen_7b3cc38f0e97774e :: + 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:313: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_7b3cc38f0e97774e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_f2863015f1091479" hs_bindgen_f2863015f1091479 :: + 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:328: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_f2863015f1091479 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_23f8e79b8a063b50" hs_bindgen_23f8e79b8a063b50 :: + 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:337: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_23f8e79b8a063b50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_2c63d2b81a6fae3e" hs_bindgen_2c63d2b81a6fae3e :: + 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:347: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_2c63d2b81a6fae3e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_7835aa18a1b5e3c0" hs_bindgen_7835aa18a1b5e3c0 :: + 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:357: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_7835aa18a1b5e3c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_78d8e93d88931367" hs_bindgen_78d8e93d88931367 :: + 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:367: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_78d8e93d88931367 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_a5cb1c99fe9b6a09" hs_bindgen_a5cb1c99fe9b6a09 :: + 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:374: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_a5cb1c99fe9b6a09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_b328ae9220b8245d" hs_bindgen_b328ae9220b8245d :: + 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:388: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_b328ae9220b8245d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_ea1373c6baabfc30" hs_bindgen_ea1373c6baabfc30 :: + 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:396: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_ea1373c6baabfc30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_06bcf6e637423d99" hs_bindgen_06bcf6e637423d99 :: + 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:404: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_06bcf6e637423d99 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_2039a238fef8bf68" hs_bindgen_2039a238fef8bf68 :: + 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:412: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_2039a238fef8bf68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_45556e24c77990e0" hs_bindgen_45556e24c77990e0 :: + 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:421: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_45556e24c77990e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_ed76f01c4059c851" hs_bindgen_ed76f01c4059c851 :: + 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:431: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_ed76f01c4059c851 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_27f91c08518168f2" hs_bindgen_27f91c08518168f2 :: + 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:439: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_27f91c08518168f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_986c133acfe6ddf7" hs_bindgen_986c133acfe6ddf7 :: + 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:446: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_986c133acfe6ddf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_bcd348034533014a" hs_bindgen_bcd348034533014a :: + 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:454: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_bcd348034533014a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_e6c5e38eec861aae" hs_bindgen_e6c5e38eec861aae :: + 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:469: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_e6c5e38eec861aae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_e4d55722e8d3196d" hs_bindgen_e4d55722e8d3196d :: + 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:477: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_e4d55722e8d3196d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_d4de84c11863c2b5" hs_bindgen_d4de84c11863c2b5 :: + 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:486: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_d4de84c11863c2b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_bce426fdfe105380" hs_bindgen_bce426fdfe105380 :: + 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:495: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_bce426fdfe105380 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_ba4947d58c256574" hs_bindgen_ba4947d58c256574 :: + 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:504: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_ba4947d58c256574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_f4160ad6907c04c4" hs_bindgen_f4160ad6907c04c4 :: + 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:514: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_f4160ad6907c04c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_a794760f7e4e729e" hs_bindgen_a794760f7e4e729e :: + 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:522: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_a794760f7e4e729e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_c6a9fc46e00658ae" hs_bindgen_c6a9fc46e00658ae :: + 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:530: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_c6a9fc46e00658ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_465bad6d7f070043" hs_bindgen_465bad6d7f070043 :: + 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:540: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_465bad6d7f070043 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_e7175044d231cfe2" hs_bindgen_e7175044d231cfe2 :: + 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:550: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_e7175044d231cfe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_4318666d6635d3bf" hs_bindgen_4318666d6635d3bf :: + 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:564: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_4318666d6635d3bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_5a3c560998d2edb1" hs_bindgen_5a3c560998d2edb1 :: + 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:569: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_5a3c560998d2edb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_e90dfbf5053cd475" hs_bindgen_e90dfbf5053cd475 :: + 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:574: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_e90dfbf5053cd475 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_39b6eace6e89837e" hs_bindgen_39b6eace6e89837e :: + 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:579: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_39b6eace6e89837e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_8e1d1b6e2c545e4b" hs_bindgen_8e1d1b6e2c545e4b :: + 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:584: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_8e1d1b6e2c545e4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_4c95ec7739c4e39a" hs_bindgen_4c95ec7739c4e39a :: + 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:589: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_4c95ec7739c4e39a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_ba38a257db0a7b6f" hs_bindgen_ba38a257db0a7b6f :: + 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:596: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_ba38a257db0a7b6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_8c068e57373ef9df" hs_bindgen_8c068e57373ef9df :: + 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:601: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_8c068e57373ef9df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_a65cc8fbe95317fe" hs_bindgen_a65cc8fbe95317fe :: + 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:607: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_a65cc8fbe95317fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_79b089e4bda0cd4e" hs_bindgen_79b089e4bda0cd4e :: + 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:613: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_79b089e4bda0cd4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_d115f3cd6f6bc8f4" hs_bindgen_d115f3cd6f6bc8f4 :: + 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:619: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_d115f3cd6f6bc8f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5fb3702a8191ce98" hs_bindgen_5fb3702a8191ce98 :: + 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:625: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_5fb3702a8191ce98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_55fbce497899da1f" hs_bindgen_55fbce497899da1f :: + 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:630: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_55fbce497899da1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_c30427ffd12d2e1f" hs_bindgen_c30427ffd12d2e1f :: + 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:640: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_c30427ffd12d2e1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_bd7b2688d2a0c7ff" hs_bindgen_bd7b2688d2a0c7ff :: + 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:645: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_bd7b2688d2a0c7ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_dae47b4b6d357f4c" hs_bindgen_dae47b4b6d357f4c :: + 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:650: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_dae47b4b6d357f4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_558a679c50081ba9" hs_bindgen_558a679c50081ba9 :: + 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:677: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_558a679c50081ba9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_d6144d0b6b679c77" hs_bindgen_d6144d0b6b679c77 :: + 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:689: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_d6144d0b6b679c77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_75cc1a1671174022" hs_bindgen_75cc1a1671174022 :: + 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:695: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_75cc1a1671174022 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_4b04a8c3e098f4ef" hs_bindgen_4b04a8c3e098f4ef :: + 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:714: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_4b04a8c3e098f4ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_203af346efb0ce1c" hs_bindgen_203af346efb0ce1c :: + 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:747: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_203af346efb0ce1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_f3d31374fcf9f850" hs_bindgen_f3d31374fcf9f850 :: + 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:771: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_f3d31374fcf9f850 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_58a328c1663d4865" hs_bindgen_58a328c1663d4865 :: + 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:798: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_58a328c1663d4865 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_b448e9dba4010406" hs_bindgen_b448e9dba4010406 :: + 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:817: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_b448e9dba4010406 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_45865e6ef1b742fb" hs_bindgen_45865e6ef1b742fb :: + 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:840: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_45865e6ef1b742fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_7f325c5049ef7af6" hs_bindgen_7f325c5049ef7af6 :: + 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:858: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_7f325c5049ef7af6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_a442f28b98003e29" hs_bindgen_a442f28b98003e29 :: + 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:864: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_a442f28b98003e29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_4fe963af266c900a" hs_bindgen_4fe963af266c900a :: + 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:870: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_4fe963af266c900a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_1c98a1cff0a64c30" hs_bindgen_1c98a1cff0a64c30 :: + 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:875: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_1c98a1cff0a64c30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_64056e9242b9f924" hs_bindgen_64056e9242b9f924 :: + 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:881: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_64056e9242b9f924 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_da6473c56ecb17fc" hs_bindgen_da6473c56ecb17fc :: + 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:887: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_da6473c56ecb17fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_104413df5ef833f8" hs_bindgen_104413df5ef833f8 :: + 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:893: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_104413df5ef833f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_e809c4c259642171" hs_bindgen_e809c4c259642171 :: + 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:901: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_e809c4c259642171 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_c38bd91eb773c36e" hs_bindgen_c38bd91eb773c36e :: + 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:911: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_c38bd91eb773c36e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_1cccb0bc2b808d18" hs_bindgen_1cccb0bc2b808d18 :: + 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:924: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_1cccb0bc2b808d18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_7253e0c9efb6677c" hs_bindgen_7253e0c9efb6677c :: + 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:930: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_7253e0c9efb6677c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_a5dbf9c14ef944ba" hs_bindgen_a5dbf9c14ef944ba :: + 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:935: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_a5dbf9c14ef944ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_b5f470ee34116a7d" hs_bindgen_b5f470ee34116a7d :: + 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:940: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_b5f470ee34116a7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_54f994641aaad673" hs_bindgen_54f994641aaad673 :: + 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:945: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_54f994641aaad673 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_6ee0ea99b18b2775" hs_bindgen_6ee0ea99b18b2775 :: + 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:950: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_6ee0ea99b18b2775 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_f7d99b105ca848c6" hs_bindgen_f7d99b105ca848c6 :: + 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:955: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_f7d99b105ca848c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_c5c38a4314da4b31" hs_bindgen_c5c38a4314da4b31 :: + 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:960: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_c5c38a4314da4b31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_ad53c5a9ede05a60" hs_bindgen_ad53c5a9ede05a60 :: + 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:966: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_ad53c5a9ede05a60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_d2361851947e24f6" hs_bindgen_d2361851947e24f6 :: + 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:971: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_d2361851947e24f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_dcb793ab24ad2246" hs_bindgen_dcb793ab24ad2246 :: + 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:976: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_dcb793ab24ad2246 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_58b4ba2fcfbc57b0" hs_bindgen_58b4ba2fcfbc57b0 :: + 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:981: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_58b4ba2fcfbc57b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_ea97909ab3be75b8" hs_bindgen_ea97909ab3be75b8 :: + 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:986: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_ea97909ab3be75b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_3d3599795edf55f8" hs_bindgen_3d3599795edf55f8 :: + 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:991: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_3d3599795edf55f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_fa4879f7a60c18ab" hs_bindgen_fa4879f7a60c18ab :: + 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:998: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_fa4879f7a60c18ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_8681a3ed32fd402d" hs_bindgen_8681a3ed32fd402d :: + 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:1003: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_8681a3ed32fd402d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_22da548f1f6279ff" hs_bindgen_22da548f1f6279ff :: + 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:1005: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_22da548f1f6279ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_1bffda9270fe186f" hs_bindgen_1bffda9270fe186f :: + 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:1007: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_1bffda9270fe186f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_2f7c6dc42b10dcb9" hs_bindgen_2f7c6dc42b10dcb9 :: + 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:1009: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_2f7c6dc42b10dcb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_ea229a5fcef4240b" hs_bindgen_ea229a5fcef4240b :: + 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:1010: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_ea229a5fcef4240b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_3aeab5b537646f81" hs_bindgen_3aeab5b537646f81 :: + 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:1012: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_3aeab5b537646f81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_2a17ff88092e908e" hs_bindgen_2a17ff88092e908e :: + 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:1013: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_2a17ff88092e908e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_ad4f3756d13c2c32" hs_bindgen_ad4f3756d13c2c32 :: + 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:1015: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_ad4f3756d13c2c32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_52c47b1c15651b1a" hs_bindgen_52c47b1c15651b1a :: + 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:1016: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_52c47b1c15651b1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_6f4b94183bec95fb" hs_bindgen_6f4b94183bec95fb :: + 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:1017: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_6f4b94183bec95fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_f423430149fd9537" hs_bindgen_f423430149fd9537 :: + 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:1020: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_f423430149fd9537 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_ae7d4bfd8c631135" hs_bindgen_ae7d4bfd8c631135 :: + 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:1023: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_ae7d4bfd8c631135 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_22bb07c7bab510a0" hs_bindgen_22bb07c7bab510a0 :: + 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:1030: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_22bb07c7bab510a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_3c7c50afef782efc" hs_bindgen_3c7c50afef782efc :: + 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:1037: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_3c7c50afef782efc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_d07a03c746f358af" hs_bindgen_d07a03c746f358af :: + 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:1042: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_d07a03c746f358af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_d6d0e1f562f4fe33" hs_bindgen_d6d0e1f562f4fe33 :: + 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:1046: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_d6d0e1f562f4fe33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_49d8107318e4ccaa" hs_bindgen_49d8107318e4ccaa :: + 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:1048: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_49d8107318e4ccaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_6c9eee3cdf60f57f" hs_bindgen_6c9eee3cdf60f57f :: + 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:1049: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_6c9eee3cdf60f57f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_2f932c519e8a8109" hs_bindgen_2f932c519e8a8109 :: + 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:1051: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_2f932c519e8a8109 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_15b3cc5b879785b5" hs_bindgen_15b3cc5b879785b5 :: + 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:1053: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_15b3cc5b879785b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_13ec5c0c9d1f2b62" hs_bindgen_13ec5c0c9d1f2b62 :: + 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:1056: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_13ec5c0c9d1f2b62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_7da1b93b49caf7f1" hs_bindgen_7da1b93b49caf7f1 :: + 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:1058: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_7da1b93b49caf7f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_cacc4908e9a38fcf" hs_bindgen_cacc4908e9a38fcf :: + 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:1065: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_cacc4908e9a38fcf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_5d08d82ac24fecb9" hs_bindgen_5d08d82ac24fecb9 :: + 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:1072: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_5d08d82ac24fecb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_b054e12f7e114493" hs_bindgen_b054e12f7e114493 :: + 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:1077: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_b054e12f7e114493 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_4680e85dc07a885a" hs_bindgen_4680e85dc07a885a :: + 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:1082: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_4680e85dc07a885a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_ea8a8d7e7394b76e" hs_bindgen_ea8a8d7e7394b76e :: + 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:1100: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_ea8a8d7e7394b76e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_9bea45020c43237d" hs_bindgen_9bea45020c43237d :: + 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:1111: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_9bea45020c43237d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_658b2a35347a05c9" hs_bindgen_658b2a35347a05c9 :: + 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:1122: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_658b2a35347a05c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_75da440d33ead3d4" hs_bindgen_75da440d33ead3d4 :: + 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)/__]: hanlder 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:1130: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_75da440d33ead3d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_8281b6728920bbc1" hs_bindgen_8281b6728920bbc1 :: + 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:1136: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_8281b6728920bbc1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_b294bcc501639021" hs_bindgen_b294bcc501639021 :: + 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:1141: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_b294bcc501639021 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_4759cfe07cf7e096" hs_bindgen_4759cfe07cf7e096 :: + 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:1146: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_4759cfe07cf7e096 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_8b06bca6d6f6cc34" hs_bindgen_8b06bca6d6f6cc34 :: + 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:1153: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_8b06bca6d6f6cc34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_4a4eb3765267f548" hs_bindgen_4a4eb3765267f548 :: + 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:1160: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_4a4eb3765267f548 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_76e99ba8e2c96879" hs_bindgen_76e99ba8e2c96879 :: + 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:1171: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_76e99ba8e2c96879 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_06b6e4e956655b07" hs_bindgen_06b6e4e956655b07 :: + 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:1178: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_06b6e4e956655b07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_d7a29dfe6a09086a" hs_bindgen_d7a29dfe6a09086a :: + 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:1185: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_d7a29dfe6a09086a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_4a738f1fe0c9d5cb" hs_bindgen_4a738f1fe0c9d5cb :: + 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:1201: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_4a738f1fe0c9d5cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_3f7357c3a37ffcbd" hs_bindgen_3f7357c3a37ffcbd :: + 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:1217: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_3f7357c3a37ffcbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_6fb3c05ad4999926" hs_bindgen_6fb3c05ad4999926 :: + 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:1225: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_6fb3c05ad4999926 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_fa6d30db306d6c61" hs_bindgen_fa6d30db306d6c61 :: + 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:1233: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_fa6d30db306d6c61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_57d3b71a91c1c77c" hs_bindgen_57d3b71a91c1c77c :: + 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:1241: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_57d3b71a91c1c77c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_057cbdedd254f363" hs_bindgen_057cbdedd254f363 :: + 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:1247: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_057cbdedd254f363 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_43a145cd20837431" hs_bindgen_43a145cd20837431 :: + 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:1253: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_43a145cd20837431 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_893de71a78e744e8" hs_bindgen_893de71a78e744e8 :: + 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:1258: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_893de71a78e744e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_7e77120d626fec6f" hs_bindgen_7e77120d626fec6f :: + 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:1263: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_7e77120d626fec6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_1cbd7d7da43c6f7f" hs_bindgen_1cbd7d7da43c6f7f :: + 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:1268: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_1cbd7d7da43c6f7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_35e6c71e59a22099" hs_bindgen_35e6c71e59a22099 :: + 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:1273: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_35e6c71e59a22099 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_1360e9d876274694" hs_bindgen_1360e9d876274694 :: + 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:1278: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_1360e9d876274694 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_c1879828d07448f7" hs_bindgen_c1879828d07448f7 :: + 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:1283: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_c1879828d07448f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_d68382000cb5ae83" hs_bindgen_d68382000cb5ae83 :: + 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:1288: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_d68382000cb5ae83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_453ef3dd638a9ea9" hs_bindgen_453ef3dd638a9ea9 :: + 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:1295: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_453ef3dd638a9ea9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_d99f56f81348a37b" hs_bindgen_d99f56f81348a37b :: + 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:1311: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_d99f56f81348a37b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_afa05342f47723d2" hs_bindgen_afa05342f47723d2 :: + 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:1321: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_afa05342f47723d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_67822e5cbe7990ce" hs_bindgen_67822e5cbe7990ce :: + 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:1325: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_67822e5cbe7990ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_f64b3fe417ec4021" hs_bindgen_f64b3fe417ec4021 :: + 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:1328: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_f64b3fe417ec4021 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_51792cd886012fd6" hs_bindgen_51792cd886012fd6 :: + 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:1330: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_51792cd886012fd6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_adf13bf838ce74b5" hs_bindgen_adf13bf838ce74b5 :: + 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:1332: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_adf13bf838ce74b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_85ff5ff5adae30b3" hs_bindgen_85ff5ff5adae30b3 :: + 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:1334: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_85ff5ff5adae30b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_3bad78edf2082391" hs_bindgen_3bad78edf2082391 :: + 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:1336: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_3bad78edf2082391 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_1e18ea23d332b3f2" hs_bindgen_1e18ea23d332b3f2 :: + 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:1356: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_1e18ea23d332b3f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_344bd7cbc5ffa122" hs_bindgen_344bd7cbc5ffa122 :: + 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:1378: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_344bd7cbc5ffa122 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_8cfbb938f1d89445" hs_bindgen_8cfbb938f1d89445 :: + 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:1386: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_8cfbb938f1d89445 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_7b96d8f7222c7025" hs_bindgen_7b96d8f7222c7025 :: + 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:1391: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_7b96d8f7222c7025 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_006dfcead38feece" hs_bindgen_006dfcead38feece :: + 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:1405: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_006dfcead38feece + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_01b8abd378d00829" hs_bindgen_01b8abd378d00829 :: + 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:1410: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_01b8abd378d00829 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_b81d886737d6eb0f" hs_bindgen_b81d886737d6eb0f :: + 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:1415: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_b81d886737d6eb0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_93b5cef5fd5c6287" hs_bindgen_93b5cef5fd5c6287 :: + 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:1420: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_93b5cef5fd5c6287 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_04ce5474c0142fc6" hs_bindgen_04ce5474c0142fc6 :: + 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:1422: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_04ce5474c0142fc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_1354fbbed63fca7d" hs_bindgen_1354fbbed63fca7d :: + 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:1429: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_1354fbbed63fca7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_fa2aefb4a353d7db" hs_bindgen_fa2aefb4a353d7db :: + 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:1445: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_fa2aefb4a353d7db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_f841ee30b9d3f64c" hs_bindgen_f841ee30b9d3f64c :: + 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:1461: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_f841ee30b9d3f64c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_e2b22b1213302620" hs_bindgen_e2b22b1213302620 :: + 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:1478: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_e2b22b1213302620 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_36ad8e4eafd30d6c" hs_bindgen_36ad8e4eafd30d6c :: + 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:1493: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_36ad8e4eafd30d6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_aa715da48ecc6f39" hs_bindgen_aa715da48ecc6f39 :: + 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:1509: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_aa715da48ecc6f39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_2dbbf78cd7050f8a" hs_bindgen_2dbbf78cd7050f8a :: + 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:1524: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_2dbbf78cd7050f8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_b7517c63c710289d" hs_bindgen_b7517c63c710289d :: + 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:1535: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_b7517c63c710289d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_e770a9bd142980d1" hs_bindgen_e770a9bd142980d1 :: + 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:1537: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_e770a9bd142980d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_2434c2942df87544" hs_bindgen_2434c2942df87544 :: + 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:1540: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_2434c2942df87544 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_1a639e67bf149bab" hs_bindgen_1a639e67bf149bab :: + 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:1545: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_1a639e67bf149bab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_6ff26eddd7e17e77" hs_bindgen_6ff26eddd7e17e77 :: + 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:1550: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_6ff26eddd7e17e77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_e6a67a89887a5a3a" hs_bindgen_e6a67a89887a5a3a :: + 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:1555: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_e6a67a89887a5a3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_8485efa960a438d8" hs_bindgen_8485efa960a438d8 :: + 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:1557: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_8485efa960a438d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_c04dfab1e6c9a737" hs_bindgen_c04dfab1e6c9a737 :: + 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:1562: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_c04dfab1e6c9a737 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_f508a13124a22c1f" hs_bindgen_f508a13124a22c1f :: + 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:1564: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_f508a13124a22c1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_c76a724c16e80371" hs_bindgen_c76a724c16e80371 :: + 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:1567: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_c76a724c16e80371 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_a0b29df5e94c06b5" hs_bindgen_a0b29df5e94c06b5 :: + 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:1572: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_a0b29df5e94c06b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_5cc609b2fb8ae284" hs_bindgen_5cc609b2fb8ae284 :: + 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:1577: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_5cc609b2fb8ae284 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_1c6deb386a9d2b69" hs_bindgen_1c6deb386a9d2b69 :: + 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:1579: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_1c6deb386a9d2b69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_4a1e7600ae60026b" hs_bindgen_4a1e7600ae60026b :: + 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:1585: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_4a1e7600ae60026b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_acabd0a9cc08d5a7" hs_bindgen_acabd0a9cc08d5a7 :: + 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:1588: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_acabd0a9cc08d5a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_00ee5328166692e9" hs_bindgen_00ee5328166692e9 :: + 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:1595: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_00ee5328166692e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_b84c7d3f28b86c02" hs_bindgen_b84c7d3f28b86c02 :: + 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:1602: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_b84c7d3f28b86c02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_5547dfc6d07d577f" hs_bindgen_5547dfc6d07d577f :: + 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:1607: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_5547dfc6d07d577f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_9e2dcdc1d45bb292" hs_bindgen_9e2dcdc1d45bb292 :: + 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:1609: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_9e2dcdc1d45bb292 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_3a24084c8d9b5568" hs_bindgen_3a24084c8d9b5568 :: + 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:1612: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_3a24084c8d9b5568 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_4fab38a61e115e87" hs_bindgen_4fab38a61e115e87 :: + 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:1614: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_4fab38a61e115e87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_8237a9c737717650" hs_bindgen_8237a9c737717650 :: + 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:1616: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_8237a9c737717650 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_9f25479fc2fcd89b" hs_bindgen_9f25479fc2fcd89b :: + 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:1618: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_9f25479fc2fcd89b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_48898bdf4d2700e3" hs_bindgen_48898bdf4d2700e3 :: + 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:1620: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_48898bdf4d2700e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_a476200a8f1ee8e5" hs_bindgen_a476200a8f1ee8e5 :: + 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:1623: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_a476200a8f1ee8e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_2c77e53c9ef5fdbb" hs_bindgen_2c77e53c9ef5fdbb :: + 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:1625: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_2c77e53c9ef5fdbb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_ac6d4cfb1a032e9e" hs_bindgen_ac6d4cfb1a032e9e :: + 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:1628: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_ac6d4cfb1a032e9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_1a5e7ee30f467816" hs_bindgen_1a5e7ee30f467816 :: + 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:1630: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_1a5e7ee30f467816 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_d81a707643538a5b" hs_bindgen_d81a707643538a5b :: + 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:1636: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_d81a707643538a5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_3462a3edeb467510" hs_bindgen_3462a3edeb467510 :: + 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:1639: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_3462a3edeb467510 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_16642a4738bef926" hs_bindgen_16642a4738bef926 :: + 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:1642: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_16642a4738bef926 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_bf5068b209fd216b" hs_bindgen_bf5068b209fd216b :: + 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:1645: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_bf5068b209fd216b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_c5e2b6b2d278b556" hs_bindgen_c5e2b6b2d278b556 :: + 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:1647: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_c5e2b6b2d278b556 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_8d5cf2c95260cb40" hs_bindgen_8d5cf2c95260cb40 :: + 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:1649: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_8d5cf2c95260cb40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_c3de84dd0036f96a" hs_bindgen_c3de84dd0036f96a :: + 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:1651: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_c3de84dd0036f96a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_97ef63a7bd0f0a40" hs_bindgen_97ef63a7bd0f0a40 :: + 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:1666: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_97ef63a7bd0f0a40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_03621ffccc58af8c" hs_bindgen_03621ffccc58af8c :: + 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:1680: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_03621ffccc58af8c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_7e411e779692b046" hs_bindgen_7e411e779692b046 :: + 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:1698: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_7e411e779692b046 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_b5473049d8311316" hs_bindgen_b5473049d8311316 :: + 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:1713: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_b5473049d8311316 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_2ca56163437fb9df" hs_bindgen_2ca56163437fb9df :: + 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:1719: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_2ca56163437fb9df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_a377b1fb43394c7b" hs_bindgen_a377b1fb43394c7b :: + 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:1721: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_a377b1fb43394c7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_1774c4c8ae6b9051" hs_bindgen_1774c4c8ae6b9051 :: + 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:1724: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_1774c4c8ae6b9051 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3bad3a7bde84d9af" hs_bindgen_3bad3a7bde84d9af :: + 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:1727: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_3bad3a7bde84d9af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_474f8d8947b4cf4d" hs_bindgen_474f8d8947b4cf4d :: + 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:1733: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_474f8d8947b4cf4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_bf0ffeab316b7a89" hs_bindgen_bf0ffeab316b7a89 :: + 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:1735: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_bf0ffeab316b7a89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_3b9f1a76e256a58d" hs_bindgen_3b9f1a76e256a58d :: + 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:1738: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_3b9f1a76e256a58d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_6074e44342ba5f56" hs_bindgen_6074e44342ba5f56 :: + 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:1741: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_6074e44342ba5f56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_c21f1ad204b5a4f8" hs_bindgen_c21f1ad204b5a4f8 :: + 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:1747: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_c21f1ad204b5a4f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_4df56ae1bdd66548" hs_bindgen_4df56ae1bdd66548 :: + 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:1749: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_4df56ae1bdd66548 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_705fa61bb79a062e" hs_bindgen_705fa61bb79a062e :: + 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:1752: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_705fa61bb79a062e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_733a19bf0f8e5d1a" hs_bindgen_733a19bf0f8e5d1a :: + 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:1755: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_733a19bf0f8e5d1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_1de1a907a8f052fa" hs_bindgen_1de1a907a8f052fa :: + 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:1761: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_1de1a907a8f052fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_99c9a7c4871e3d7a" hs_bindgen_99c9a7c4871e3d7a :: + 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:1763: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_99c9a7c4871e3d7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_c1ead104f31f3e2d" hs_bindgen_c1ead104f31f3e2d :: + 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:1766: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_c1ead104f31f3e2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_49b07b278352fadb" hs_bindgen_49b07b278352fadb :: + 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:1769: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_49b07b278352fadb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_f51469c178eaa694" hs_bindgen_f51469c178eaa694 :: + 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:1776: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_f51469c178eaa694 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_cc6080d6ada0a094" hs_bindgen_cc6080d6ada0a094 :: + 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:1779: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_cc6080d6ada0a094 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_2d8fcca64efd3616" hs_bindgen_2d8fcca64efd3616 :: + 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:1790: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_2d8fcca64efd3616 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_3cf1425e97069bf4" hs_bindgen_3cf1425e97069bf4 :: + 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:1793: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_3cf1425e97069bf4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_e88e1d8a56c85be2" hs_bindgen_e88e1d8a56c85be2 :: + 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:1797: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_e88e1d8a56c85be2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_643948781067c3fe" hs_bindgen_643948781067c3fe :: + 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:1801: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_643948781067c3fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_6d7f1ad61ff2477e" hs_bindgen_6d7f1ad61ff2477e :: + 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:1808: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_6d7f1ad61ff2477e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_3a0c03474cdecb82" hs_bindgen_3a0c03474cdecb82 :: + 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:1811: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_3a0c03474cdecb82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_a02d86d259bd437b" hs_bindgen_a02d86d259bd437b :: + 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:1818: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_a02d86d259bd437b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_39a7cbd017234245" hs_bindgen_39a7cbd017234245 :: + 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:1824: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_39a7cbd017234245 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_d94aac28d03d1cc4" hs_bindgen_d94aac28d03d1cc4 :: + 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:1834: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_d94aac28d03d1cc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_86493f787362e859" hs_bindgen_86493f787362e859 :: + 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:1837: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_86493f787362e859 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_a65350f46701a534" hs_bindgen_a65350f46701a534 :: + 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:1844: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_a65350f46701a534 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_846191d3ffb86dcd" hs_bindgen_846191d3ffb86dcd :: + 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:1847: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_846191d3ffb86dcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_aded3f3659f547e7" hs_bindgen_aded3f3659f547e7 :: + 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:1853: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_aded3f3659f547e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_c2818c03f4b836e6" hs_bindgen_c2818c03f4b836e6 :: + 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:1856: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_c2818c03f4b836e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_6fbe44384374e807" hs_bindgen_6fbe44384374e807 :: + 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:1859: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_6fbe44384374e807 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_f08746fa407a122f" hs_bindgen_f08746fa407a122f :: + 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:1862: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_f08746fa407a122f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_1e5a62ff79fca3a2" hs_bindgen_1e5a62ff79fca3a2 :: + 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:1865: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_1e5a62ff79fca3a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_3242ca1dede84a0f" hs_bindgen_3242ca1dede84a0f :: + 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:1868: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_3242ca1dede84a0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_e863e5e3b45bd177" hs_bindgen_e863e5e3b45bd177 :: + 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:1871: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_e863e5e3b45bd177 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_7d7e281bdf019cb7" hs_bindgen_7d7e281bdf019cb7 :: + 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:1875: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_7d7e281bdf019cb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_fc3d1b9d44788b7d" hs_bindgen_fc3d1b9d44788b7d :: + 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:1879: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_fc3d1b9d44788b7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_a9caeecd9bd29d69" hs_bindgen_a9caeecd9bd29d69 :: + 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:1882: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_a9caeecd9bd29d69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_5632a1d267ba05d0" hs_bindgen_5632a1d267ba05d0 :: + 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:1889: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_5632a1d267ba05d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_a5986dff1df3e445" hs_bindgen_a5986dff1df3e445 :: + 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:1897: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_a5986dff1df3e445 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_b0a5a6512fcf99cb" hs_bindgen_b0a5a6512fcf99cb :: + 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:1902: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_b0a5a6512fcf99cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_7b12231986db4fa3" hs_bindgen_7b12231986db4fa3 :: + 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:1905: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_7b12231986db4fa3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_1b2fb5bb77adf3fc" hs_bindgen_1b2fb5bb77adf3fc :: + 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:1908: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_1b2fb5bb77adf3fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_188ab231741a6959" hs_bindgen_188ab231741a6959 :: + 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:1921: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_188ab231741a6959 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_d61a3f93a7ef3ca6" hs_bindgen_d61a3f93a7ef3ca6 :: + 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:1926: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_d61a3f93a7ef3ca6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_f90c5d68c8a8ef1e" hs_bindgen_f90c5d68c8a8ef1e :: + 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:1929: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_f90c5d68c8a8ef1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_8bd73a3597ec40f4" hs_bindgen_8bd73a3597ec40f4 :: + 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:1932: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_8bd73a3597ec40f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_9267a11036585a4b" hs_bindgen_9267a11036585a4b :: + 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:1944: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_9267a11036585a4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_8b872b07c3e8969d" hs_bindgen_8b872b07c3e8969d :: + 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:1949: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_8b872b07c3e8969d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_bd913c48b95a2799" hs_bindgen_bd913c48b95a2799 :: + 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:1951: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_bd913c48b95a2799 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_69b155f2dd665c8f" hs_bindgen_69b155f2dd665c8f :: + 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:1953: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_69b155f2dd665c8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_3e7d55dd10ef0ee3" hs_bindgen_3e7d55dd10ef0ee3 :: + 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:1956: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_3e7d55dd10ef0ee3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_df533327469b1b5f" hs_bindgen_df533327469b1b5f :: + 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:1964: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_df533327469b1b5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_f511fb0fd9b555df" hs_bindgen_f511fb0fd9b555df :: + 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:1972: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_f511fb0fd9b555df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_9b25ecd564c2c9f9" hs_bindgen_9b25ecd564c2c9f9 :: + 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:1974: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_9b25ecd564c2c9f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_06a71913152930b4" hs_bindgen_06a71913152930b4 :: + 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:1975: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_06a71913152930b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_3fda38334320f753" hs_bindgen_3fda38334320f753 :: + 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:1983: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_3fda38334320f753 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_52f3f411223fea40" hs_bindgen_52f3f411223fea40 :: + 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:1988: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_52f3f411223fea40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_9b4e31283400ed43" hs_bindgen_9b4e31283400ed43 :: + 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:1990: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_9b4e31283400ed43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_7f335d34760c475e" hs_bindgen_7f335d34760c475e :: + 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:1993: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_7f335d34760c475e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_87308c06868253f4" hs_bindgen_87308c06868253f4 :: + 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:1995: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_87308c06868253f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_5bff341144506aee" hs_bindgen_5bff341144506aee :: + 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:1998: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_5bff341144506aee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_892501c95e02b84c" hs_bindgen_892501c95e02b84c :: + 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:2012: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_892501c95e02b84c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_6d268942604fc048" hs_bindgen_6d268942604fc048 :: + 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:2017: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_6d268942604fc048 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_36c282c5178cfbdc" hs_bindgen_36c282c5178cfbdc :: + 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:2020: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_36c282c5178cfbdc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_421d658107f8cfc6" hs_bindgen_421d658107f8cfc6 :: + 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:2025: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_421d658107f8cfc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_4c31c82ddcfe448d" hs_bindgen_4c31c82ddcfe448d :: + 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:2029: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_4c31c82ddcfe448d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_977c067d10559a80" hs_bindgen_977c067d10559a80 :: + 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:2042: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_977c067d10559a80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_820f79c31556bafc" hs_bindgen_820f79c31556bafc :: + 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:2047: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_820f79c31556bafc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_ab0cf4347dc495c4" hs_bindgen_ab0cf4347dc495c4 :: + 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:2050: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_ab0cf4347dc495c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_0a94a687cee98a15" hs_bindgen_0a94a687cee98a15 :: + 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:2055: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_0a94a687cee98a15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_130df3d535a8ea07" hs_bindgen_130df3d535a8ea07 :: + 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:2068: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_130df3d535a8ea07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_bb558a2ac251a874" hs_bindgen_bb558a2ac251a874 :: + 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:2075: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_bb558a2ac251a874 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_bed9de8fcac22a3a" hs_bindgen_bed9de8fcac22a3a :: + 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:2090: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_bed9de8fcac22a3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_647b1c77658e604e" hs_bindgen_647b1c77658e604e :: + 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:2105: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_647b1c77658e604e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_cfb13264a0f72fea" hs_bindgen_cfb13264a0f72fea :: + 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:2106: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_cfb13264a0f72fea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_7f689121cf5ee737" hs_bindgen_7f689121cf5ee737 :: + 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:2111: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_7f689121cf5ee737 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_bb7fc2b7d0d5bf18" hs_bindgen_bb7fc2b7d0d5bf18 :: + 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:2113: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_bb7fc2b7d0d5bf18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_c6466a021d82bc6c" hs_bindgen_c6466a021d82bc6c :: + 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:2116: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_c6466a021d82bc6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_3fddc687ac3ebb79" hs_bindgen_3fddc687ac3ebb79 :: + 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:2117: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_3fddc687ac3ebb79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_a40f42c7d9a502e4" hs_bindgen_a40f42c7d9a502e4 :: + 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:2119: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_a40f42c7d9a502e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_6017562c8ec2bc42" hs_bindgen_6017562c8ec2bc42 :: + 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:2120: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_6017562c8ec2bc42 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_a6dd3407e674dccf" hs_bindgen_a6dd3407e674dccf :: + 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:2123: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_a6dd3407e674dccf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_192161ed9873b432" hs_bindgen_192161ed9873b432 :: + 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:2125: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_192161ed9873b432 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_e29e70a5252974ca" hs_bindgen_e29e70a5252974ca :: + 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:2126: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_e29e70a5252974ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_1dc607ee1fc8196e" hs_bindgen_1dc607ee1fc8196e :: + 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:2127: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_1dc607ee1fc8196e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_6151282f358ba157" hs_bindgen_6151282f358ba157 :: + 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:2129: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_6151282f358ba157 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_414a12589ac2c995" hs_bindgen_414a12589ac2c995 :: + 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:2132: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_414a12589ac2c995 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_4e7fddcea64d0350" hs_bindgen_4e7fddcea64d0350 :: + 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:2134: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_4e7fddcea64d0350 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_86dace42bf5305d4" hs_bindgen_86dace42bf5305d4 :: + 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:2137: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_86dace42bf5305d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_055e2249d76b2847" hs_bindgen_055e2249d76b2847 :: + 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:2141: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_055e2249d76b2847 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_e1258fd5e3270ee9" hs_bindgen_e1258fd5e3270ee9 :: + 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:2144: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_e1258fd5e3270ee9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_d36b198a162fbe92" hs_bindgen_d36b198a162fbe92 :: + 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:2147: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_d36b198a162fbe92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_11542461d2df277b" hs_bindgen_11542461d2df277b :: + 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:2163: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_11542461d2df277b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_c90a803fc0be3c35" hs_bindgen_c90a803fc0be3c35 :: + 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:2169: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_c90a803fc0be3c35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_27b4244a56282ee5" hs_bindgen_27b4244a56282ee5 :: + 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:2180: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_27b4244a56282ee5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_15cf572a7a41f604" hs_bindgen_15cf572a7a41f604 :: + 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:2195: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_15cf572a7a41f604 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_bd141b386208cffe" hs_bindgen_bd141b386208cffe :: + 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:2203: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_bd141b386208cffe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_d6bca337f926b497" hs_bindgen_d6bca337f926b497 :: + 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:2205: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_d6bca337f926b497 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_848c757253e99f7a" hs_bindgen_848c757253e99f7a :: + 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:2207: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_848c757253e99f7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_ed229457902d9761" hs_bindgen_ed229457902d9761 :: + 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:2213: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_ed229457902d9761 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_c1e097deb4835dc5" hs_bindgen_c1e097deb4835dc5 :: + 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:2220: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_c1e097deb4835dc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_db6511b7d5c71c3a" hs_bindgen_db6511b7d5c71c3a :: + 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:2238: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_db6511b7d5c71c3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_fa75a8f836e576c2" hs_bindgen_fa75a8f836e576c2 :: + 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:2247: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_fa75a8f836e576c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_b871639e95805869" hs_bindgen_b871639e95805869 :: + 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:2255: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_b871639e95805869 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_657d1785a1677f07" hs_bindgen_657d1785a1677f07 :: + 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:2265: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_657d1785a1677f07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b7b8604cb963e20d" hs_bindgen_b7b8604cb963e20d :: + 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:2284: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_b7b8604cb963e20d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_f91f506ca67c5bc5" hs_bindgen_f91f506ca67c5bc5 :: + 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:2291: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_f91f506ca67c5bc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_9a587ce3b77453ce" hs_bindgen_9a587ce3b77453ce :: + 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:2297: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_9a587ce3b77453ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_c0a05ae62a43c597" hs_bindgen_c0a05ae62a43c597 :: + 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:2303: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_c0a05ae62a43c597 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_50faf5f2cf36ee83" hs_bindgen_50faf5f2cf36ee83 :: + 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:2316: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_50faf5f2cf36ee83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_0bc8c8fc70a2fbe5" hs_bindgen_0bc8c8fc70a2fbe5 :: + 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:2324: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_0bc8c8fc70a2fbe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_0a22ddb5a8cb0eba" hs_bindgen_0a22ddb5a8cb0eba :: + 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:2333: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_0a22ddb5a8cb0eba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_6700446b4f5d6b26" hs_bindgen_6700446b4f5d6b26 :: + 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:2344: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_6700446b4f5d6b26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_ae758333553a3bcb" hs_bindgen_ae758333553a3bcb :: + 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:2355: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_ae758333553a3bcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_7981a019b6bf2622" hs_bindgen_7981a019b6bf2622 :: + 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:2362: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_7981a019b6bf2622 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_4cc607b3402fd933" hs_bindgen_4cc607b3402fd933 :: + 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:2365: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_4cc607b3402fd933 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_ae183694dd03b131" hs_bindgen_ae183694dd03b131 :: + 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:2368: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_ae183694dd03b131 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_38f150e93bd1d1f1" hs_bindgen_38f150e93bd1d1f1 :: + 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:2380: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_38f150e93bd1d1f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_b36f490ca1897249" hs_bindgen_b36f490ca1897249 :: + 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:2388: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_b36f490ca1897249 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_a19b08be54f2ed5c" hs_bindgen_a19b08be54f2ed5c :: + 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:2403: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_a19b08be54f2ed5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_b6a1df0fa8ffd02e" hs_bindgen_b6a1df0fa8ffd02e :: + 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:2422: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_b6a1df0fa8ffd02e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_dc68bf12b98de9fc" hs_bindgen_dc68bf12b98de9fc :: + 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:2438: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_dc68bf12b98de9fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_d609897da9d59504" hs_bindgen_d609897da9d59504 :: + 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:2465: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_d609897da9d59504 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_87522fb3c93fb790" hs_bindgen_87522fb3c93fb790 :: + 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:2483: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_87522fb3c93fb790 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_37ddf656b8f5255c" hs_bindgen_37ddf656b8f5255c :: + 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:2504: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_37ddf656b8f5255c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_1780ae70260ce35d" hs_bindgen_1780ae70260ce35d :: + 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:2525: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_1780ae70260ce35d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_5f6ab290d4418e9c" hs_bindgen_5f6ab290d4418e9c :: + 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:2550: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_5f6ab290d4418e9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_303be3e2d1968d7b" hs_bindgen_303be3e2d1968d7b :: + 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:2558: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_303be3e2d1968d7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_5cc854c9379f5665" hs_bindgen_5cc854c9379f5665 :: + 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:2568: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_5cc854c9379f5665 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_ed617f4fa6477989" hs_bindgen_ed617f4fa6477989 :: + 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:2579: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_ed617f4fa6477989 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_323e1b7cde99b77e" hs_bindgen_323e1b7cde99b77e :: + 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:2591: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_323e1b7cde99b77e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_3377bfd3a62e01da" hs_bindgen_3377bfd3a62e01da :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2598: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_3377bfd3a62e01da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_36dcfafccc206144" hs_bindgen_36dcfafccc206144 :: + 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:2612: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_36dcfafccc206144 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_da41f815f6ac71ab" hs_bindgen_da41f815f6ac71ab :: + IO (Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_crypto_backend_state_destroy #-} + +{-| Frees all resouces 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:2624: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_da41f815f6ac71ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_13cee8a4b5957d29" hs_bindgen_13cee8a4b5957d29 :: + 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:2635: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_13cee8a4b5957d29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_24900c26a871c17f" hs_bindgen_24900c26a871c17f :: + 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:2647: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_24900c26a871c17f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_bf96e8690bb97821" hs_bindgen_bf96e8690bb97821 :: + 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:2654: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_bf96e8690bb97821 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/Safe.hs new file mode 100644 index 00000000..33bcd2a4 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/Safe.hs @@ -0,0 +1,14907 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_8_1.Safe where + +import Botan.Bindings.Generated.Botan_3_8_1 +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_3e1af4614af3ee1e (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_6fdac81d6f876962 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_8771538fcc79c432 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_648c4940594c38ef (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_ebc6f796e3f1140d (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_d51008b0e74baf86 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_35bc30072df81b35 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_260b4609c802c4ca (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_11d9581ada8f6d7c (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_ef95c81836f1f466 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f8f6105d970ed786 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8612103e3341d750 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fd2d19ca432a4261 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6ab234550e5ffa65 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a428c078f3a9a32d (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1bf9f31fc5014906 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6bebbb06881dbe58 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_29aaf768e9664b3b (" + , " 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_277ab1e9657354ed (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b4102c7afc1f9e86 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c656c6756f72d2eb (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_16022dee7a317e7b (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d684b99594975255 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ef1690ac4203ab1a (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3f80ac07678a1bc7 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_032fd94419c64b05 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_42837f031bcd0683 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cfb0597f1115ed73 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fdf4f4dea36db98d (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f2dbc30573d69a3 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50bce49c881413c8 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_a1f4210cf95ad708 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_be1ef2a95a3edc45 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50813314cd51eb0c (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6eb6ee0e88ae3704 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_832cbba3b0c39816 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bb3bbce5977a933a (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_287cd25d68584747 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_310997f943c60cc6 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7889978502d845e3 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_2f2cf344562f258b (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_77ae0e2c051f15ed (" + , " 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_7f6026f9b1564512 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_af26510117ec1a89 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_80c153f1fd74e4df (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_754db19c136c26a7 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4864ce5d66a5244d (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dc32c62c6ae5f9b8 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8f0c1d87616638c6 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_e61f11ca17dad980 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_b0a4fb7c22e03f2d (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b152f122da54f5a8 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e7b5ad5e286bd111 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8aff791a1819581 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_58d9baacb9d2c4a2 (" + , " 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_d0b7970717d90281 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3ddd9bfc533ad6f (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_dd22bbf9f08e8975 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_772fd520f59eff29 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd360c9df9823dc5 (" + , " 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_a5bb97298534c786 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_f022ee234bd977d0 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a65047e428bed51a (" + , " 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_e28f06719cc05e16 (" + , " 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_d938c62c8a2d858e (" + , " 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_3fdfa35c98cb197d (" + , " 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_4dd51bc61998b0c9 (" + , " 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_d5032a24c4f7a171 (" + , " 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_37d35da1010998b5 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_da4df97351e40771 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_0e80090a00ce57b1 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_373a8f9ea3f9c1f9 (" + , " 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_dc52d08487c1a3cf (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_e4a795eb0a0cbec3 (" + , " 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_a234cb0055d71f86 (" + , " 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_4fd2a5aa48e656ad (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9668bb6a3c09c428 (" + , " 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_fe00df2e36eb9336 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_03c7026cf78c67ad (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3571e2bb6f2ddc25 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7b0e78fc1de6737c (" + , " 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_1eba9c86cd31cec0 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_daf31c50e719f6dc (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_af84c76f3e9c3f2c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d7d3d5780d397678 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_56357fbf24fcf610 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_57c634dfefefbc3f (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4af3c7f9d2c0ede6 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_220ea244fc38b748 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fceadaa9af2574e9 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a2322a41ebff0b1e (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ebc80d83fa1cb62 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_2c2b92e8821ab8c5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_bf18a6558d36c586 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_ffa94fb86939bd46 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_33a04e31106cd9dd (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_5169d470f6dc8e10 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_20f51e50252a8669 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1c419850e2119053 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f046f4fb5fbf9ea (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_90f6843f3b6cc450 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f4fe319de1fbfa75 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_52a270eaadc2bc5e (" + , " 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_47e2566bcf94e4fd (" + , " 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_6e7fc8b3c26eb329 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53e214bd2108f8ff (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_74f53c0af0179177 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55d3d0edcc48aeba (" + , " 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_b913d741d817a992 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_095901d325e05025 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cb2e6e9f6eb65c2e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e8d84c932b643ff5 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_94edb57213bc0a14 (" + , " 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_146c42aee2bc1fa9 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d6db8f2eda0550ac (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_026536b52abad1c0 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5bdc67d4b1a0fede (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_70218d460a7506d3 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_30ba1c2e73c86f0e (" + , " 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_e901dc62b9112584 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d623ff59d01eb0e (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3375e2480a117830 (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_739a43fdbf95d290 (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_27e3c9de6e981131 (" + , " 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_1671813dd4079e54 (" + , " 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_304178e169de6f73 (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_85ca65241a8047eb (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_13772ae8e6cc96ab (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bfe4503906b5ddbe (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_976b45cc3ccef9d6 (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0ddced6356638973 (" + , " 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_717ab18071146339 (" + , " 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_a79ca2d95a20221a (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2aa057e376d31fdd (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4c814a86e6e9e117 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e9e3279bb3e04b2 (" + , " 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_fde8f08f67ff4354 (" + , " 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_a25a72b49c2c7048 (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_efe27fd9dc982572 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d5c27cad165f7917 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_83bdd319f352e76d (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c94fd993417fdc5f (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_265f1ed786befbd3 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6e53137dd0ea8476 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ed65b490ba6e2571 (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a6da5d346a7f7659 (" + , " 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_328bf1a1664ac1b4 (" + , " 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_6b8ccc56bfa8765a (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e4e89d3b765767d4 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e1249b8af892af6 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53fbcb4ff0cf3a1f (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53057afb8558cc43 (" + , " 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_5c61e06554faf89f (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a83d0ac3cabd4732 (" + , " 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_fe2273c07b74c15f (" + , " 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_4359153518202f88 (" + , " 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_c53f47b777eb1f01 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c609d65db2681269 (" + , " 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_1f3982c4b0f038fb (" + , " 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_eeb06487d1d3cb5e (" + , " 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_451defb0c45d4c5d (" + , " 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_47300f18d705c6b7 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3855ec5dcef65fa7 (" + , " 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_eb603ff4068b71ad (" + , " 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_98cdfd93854e9abe (" + , " 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_740ae0b250f7313b (" + , " 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_ab3bc76fed5f1574 (" + , " 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_d1b922b3ac1d1192 (" + , " 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_6bada4724eb9481e (" + , " 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_7a4a9841e126d530 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cb8a8f75eac9d027 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ac83263b35d82c0b (" + , " 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_63303b44359c7436 (" + , " 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_e4e1a301021d2198 (" + , " 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_c618837004ffd688 (" + , " 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_2135c0df4f52be98 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ead3b2d10abd6f52 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e83a6b72a7dfb100 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_348fbf05902e0582 (" + , " 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_0d91e4bb3f7e6d01 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e7cbc918900fb275 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_14f5209ce8382923 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1af769421bc84fd3 (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b07b20e4909bc12 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11b0b17f6c399596 (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_615c196fcf11ce66 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_baad41e29ab38e0e (" + , " 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_21d7152342a8b081 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a15b3afc2dab7f36 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aad1006480673b8b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d7e6f9031a61a640 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a4a58ee6e9969bfc (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ac01c998424d46d6 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3412844e49661401 (" + , " 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_b182f5e2664a1bff (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_86808901f6df55ce (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6e1890614dfd2744 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee1758a80acb4e7a (" + , " 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_897e8ac4c15fd7fd (" + , " 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_ce30db2aab896130 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cc12560ad67d1d4a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8dd171970aaed98c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8f1d50774ab6daa6 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e990d83f997cb4b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7141d132efad3618 (" + , " 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_ec41849a3c6f6732 (" + , " 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_979df032294d020e (" + , " 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_ee498aeef10a5d1e (" + , " 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_fa037291bfa35890 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6cd129438cc8267a (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_10614486a96b72e7 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_379e8d4dc8d52d46 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f34bcd05a3460ab9 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_eff32151afb941e0 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a2093f7c2fe097e3 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_601188cb56ec4365 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_570ebd4f7b89cb91 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1256b49555324874 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c63f3a00ed652f9f (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_506dec65077b3d03 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5e20873696c068af (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e06f12b4816bb5a4 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a234a1b6c77e1fe5 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_217e3dbcd98838b5 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1436db20215e02e9 (" + , " 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_658084c939849e9a (" + , " 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_d441605f27bdbbf4 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ccf09e161e9041f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_62cbc91b46561c78 (" + , " 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_69ae0e6216725fa6 (" + , " 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_7ec5f4f7df82371c (" + , " 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_a22308dfd0b90b0b (" + , " 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_beffdc36ac25de16 (" + , " 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_905fa6fa2afffc4d (" + , " 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_3b860839a9109478 (" + , " 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_e940f7f344602dc7 (" + , " 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_56749ba4e68075e2 (" + , " 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_ec9f7cc35f6cf74a (" + , " 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_6165126aa8c941ba (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_13dfae1847776714 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_65d78ce997908b80 (" + , " 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_f00e233d0dd12949 (" + , " 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_0588e5c24f3838ee (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_598c815c9cd2343c (" + , " 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_3400b4b32fe5470c (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f628d4bbfd6edefa (" + , " 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_c8491949549f7f78 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c9ccda52501d1315 (" + , " 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_c783f768d35295c3 (" + , " 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_cc3db1c4803d380b (" + , " 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_718170db0fd8f842 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2eabf7bdee64bc90 (" + , " 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_db8e5fd1e31edce9 (" + , " 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_e086bf8d79fa28d6 (" + , " 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_fb6f9ccf5e974c6c (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_80536925f0ffc493 (" + , " 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_45b92d36ecdd675d (" + , " 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_59d0ac001db87ca6 (" + , " 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_0c75525f161bf1d7 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_647568d33c45bcdb (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1df3d95e4a36d567 (" + , " 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_9ba303a4fdfcdc3b (" + , " 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_0d7fd69a7b45cc26 (" + , " 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_fda6153e9f523d35 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cfddff195c2328b1 (" + , " 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_6ac244999f8ef795 (" + , " 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_961b989b99a4cbf6 (" + , " 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_ec75ec0fda68c8ca (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fea137d5f254d292 (" + , " 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_0ad5649d10c63998 (" + , " 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_8213179b9587b72c (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a0c655fd10bfe782 (" + , " 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_5705b1a67401a7bd (" + , " 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_ac2441555c343d1b (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5413bcca78af9eba (" + , " 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_de784c8116b57330 (" + , " 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_b1f514715341cf0e (" + , " 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_385e1a885d91a749 (" + , " 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_9406bec4621a4fe8 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1dbc232b48d656ed (" + , " 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_57bcdd9d08387e28 (" + , " 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_c4fb5c16712c0dfc (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_22b38b563b373a40 (" + , " 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_dea6a3d83015c717 (" + , " 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_f5f61179f6b99622 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0d839b9aa4b92dae (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11666bdc64bca4cc (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7503e927aca8457f (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_47def11a4f0f55c1 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6bb642d8a7a0d2f (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_86898b1b087fcbc0 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9f6c747867d9d3be (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45fce850fa72e08e (" + , " 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_41263a208a5db869 (" + , " 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_c72b351af73500c7 (" + , " 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_70c2a9bfdaad9f9b (" + , " 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_431352f981bfaf09 (" + , " 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_07891a570f2e9eea (" + , " 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_2ba50782eea13147 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_30f28ebb3622cd94 (" + , " 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_e83f2ee2530249f3 (" + , " 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_6a6d451524418033 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2655595899f3d2b1 (" + , " 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_b44ec899e5f9557f (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7b19c843d828fc2f (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52e734989b593003 (" + , " 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_4f5120a6d8a987b4 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_28d0cd6699c5155b (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d639164e08523e39 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1426f1e1c83624b6 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_68d013855b934397 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_32dd51dbab5c20a0 (" + , " 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_37c17ef36ef40d3a (" + , " 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_67030fb1ae2d8df9 (" + , " 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_e2bedd0aa9c9b895 (" + , " 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_a5a00e60a8b29d41 (" + , " 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_9a651d88548d937e (" + , " 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_f0f4c2136fb3dc4f (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_25299fbdfb2ecd2f (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e180b567b331c773 (" + , " 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_6b0eb68674669879 (" + , " 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_c422fce26535060e (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c147d2f1a55f0c61 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5dec731d0af638ce (" + , " 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_b95ce61188c2b797 (" + , " 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_0727f25aa17ef813 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3c26e713094a59be (" + , " 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_7cf1c7ee83b58e4d (" + , " 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_11b9a748137759f6 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_a74f15796c7a0fcd (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8ed94ef025c5eb54 (" + , " 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_5c7ed602a11bb1da (" + , " 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_982051322703fc1d (" + , " 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_f41f85f7df607eb0 (" + , " 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_9c8c5a282cfba6c2 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ccf14fd8bf25037c (" + , " 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_6ad8599e918526ab (" + , " 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_826106e6b0942777 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_693b3f7eec1b8f0a (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d685155a383d8442 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4eef1a3bf3f299f4 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e5612719bb14c4e7 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c806ec315513fcf8 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c9790bd33065efb2 (" + , " 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_08c1dd12e52ea2b2 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_96577551e8c40191 (" + , " 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_5014f16eb7d175b0 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff6ee6026af17148 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_3e1af4614af3ee1e" hs_bindgen_3e1af4614af3ee1e :: + 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:174: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_3e1af4614af3ee1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_6fdac81d6f876962" hs_bindgen_6fdac81d6f876962 :: + 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:183: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_6fdac81d6f876962 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_8771538fcc79c432" hs_bindgen_8771538fcc79c432 :: + 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:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_8771538fcc79c432 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_648c4940594c38ef" hs_bindgen_648c4940594c38ef :: + 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:196: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_648c4940594c38ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_ebc6f796e3f1140d" hs_bindgen_ebc6f796e3f1140d :: + 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:201:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_ebc6f796e3f1140d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_d51008b0e74baf86" hs_bindgen_d51008b0e74baf86 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_d51008b0e74baf86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_35bc30072df81b35" hs_bindgen_35bc30072df81b35 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:211:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_35bc30072df81b35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_260b4609c802c4ca" hs_bindgen_260b4609c802c4ca :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:216:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_260b4609c802c4ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_11d9581ada8f6d7c" hs_bindgen_11d9581ada8f6d7c :: + 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:223:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_11d9581ada8f6d7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_ef95c81836f1f466" hs_bindgen_ef95c81836f1f466 :: + 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:228: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_ef95c81836f1f466 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_f8f6105d970ed786" hs_bindgen_f8f6105d970ed786 :: + 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:234: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_f8f6105d970ed786 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_8612103e3341d750" hs_bindgen_8612103e3341d750 :: + 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:240: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_8612103e3341d750 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_fd2d19ca432a4261" hs_bindgen_fd2d19ca432a4261 :: + 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:255: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_fd2d19ca432a4261 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_6ab234550e5ffa65" hs_bindgen_6ab234550e5ffa65 :: + 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:265: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_6ab234550e5ffa65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_a428c078f3a9a32d" hs_bindgen_a428c078f3a9a32d :: + 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:277: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_a428c078f3a9a32d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_1bf9f31fc5014906" hs_bindgen_1bf9f31fc5014906 :: + 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:282: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_1bf9f31fc5014906 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_6bebbb06881dbe58" hs_bindgen_6bebbb06881dbe58 :: + 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:301: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_6bebbb06881dbe58 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_29aaf768e9664b3b" hs_bindgen_29aaf768e9664b3b :: + 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:313: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_29aaf768e9664b3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_277ab1e9657354ed" hs_bindgen_277ab1e9657354ed :: + 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:328: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_277ab1e9657354ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_b4102c7afc1f9e86" hs_bindgen_b4102c7afc1f9e86 :: + 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:337: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_b4102c7afc1f9e86 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_c656c6756f72d2eb" hs_bindgen_c656c6756f72d2eb :: + 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:347: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_c656c6756f72d2eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_16022dee7a317e7b" hs_bindgen_16022dee7a317e7b :: + 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:357: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_16022dee7a317e7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_d684b99594975255" hs_bindgen_d684b99594975255 :: + 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:367: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_d684b99594975255 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_ef1690ac4203ab1a" hs_bindgen_ef1690ac4203ab1a :: + 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:374: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_ef1690ac4203ab1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_3f80ac07678a1bc7" hs_bindgen_3f80ac07678a1bc7 :: + 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:388: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_3f80ac07678a1bc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_032fd94419c64b05" hs_bindgen_032fd94419c64b05 :: + 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:396: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_032fd94419c64b05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_42837f031bcd0683" hs_bindgen_42837f031bcd0683 :: + 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:404: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_42837f031bcd0683 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_cfb0597f1115ed73" hs_bindgen_cfb0597f1115ed73 :: + 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:412: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_cfb0597f1115ed73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_fdf4f4dea36db98d" hs_bindgen_fdf4f4dea36db98d :: + 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:421: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_fdf4f4dea36db98d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_7f2dbc30573d69a3" hs_bindgen_7f2dbc30573d69a3 :: + 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:431: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_7f2dbc30573d69a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_50bce49c881413c8" hs_bindgen_50bce49c881413c8 :: + 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:439: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_50bce49c881413c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_a1f4210cf95ad708" hs_bindgen_a1f4210cf95ad708 :: + 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:446: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_a1f4210cf95ad708 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_be1ef2a95a3edc45" hs_bindgen_be1ef2a95a3edc45 :: + 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:454: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_be1ef2a95a3edc45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_50813314cd51eb0c" hs_bindgen_50813314cd51eb0c :: + 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:469: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_50813314cd51eb0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_6eb6ee0e88ae3704" hs_bindgen_6eb6ee0e88ae3704 :: + 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:477: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_6eb6ee0e88ae3704 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_832cbba3b0c39816" hs_bindgen_832cbba3b0c39816 :: + 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:486: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_832cbba3b0c39816 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_bb3bbce5977a933a" hs_bindgen_bb3bbce5977a933a :: + 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:495: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_bb3bbce5977a933a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_287cd25d68584747" hs_bindgen_287cd25d68584747 :: + 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:504: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_287cd25d68584747 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_310997f943c60cc6" hs_bindgen_310997f943c60cc6 :: + 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:514: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_310997f943c60cc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_7889978502d845e3" hs_bindgen_7889978502d845e3 :: + 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:522: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_7889978502d845e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_2f2cf344562f258b" hs_bindgen_2f2cf344562f258b :: + 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:530: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_2f2cf344562f258b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_77ae0e2c051f15ed" hs_bindgen_77ae0e2c051f15ed :: + 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:540: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_77ae0e2c051f15ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_7f6026f9b1564512" hs_bindgen_7f6026f9b1564512 :: + 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:550: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_7f6026f9b1564512 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_af26510117ec1a89" hs_bindgen_af26510117ec1a89 :: + 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:564: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_af26510117ec1a89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_80c153f1fd74e4df" hs_bindgen_80c153f1fd74e4df :: + 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:569: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_80c153f1fd74e4df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_754db19c136c26a7" hs_bindgen_754db19c136c26a7 :: + 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:574: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_754db19c136c26a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_4864ce5d66a5244d" hs_bindgen_4864ce5d66a5244d :: + 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:579: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_4864ce5d66a5244d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_dc32c62c6ae5f9b8" hs_bindgen_dc32c62c6ae5f9b8 :: + 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:584: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_dc32c62c6ae5f9b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_8f0c1d87616638c6" hs_bindgen_8f0c1d87616638c6 :: + 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:589: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_8f0c1d87616638c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_e61f11ca17dad980" hs_bindgen_e61f11ca17dad980 :: + 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:596: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_e61f11ca17dad980 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_b0a4fb7c22e03f2d" hs_bindgen_b0a4fb7c22e03f2d :: + 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:601: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_b0a4fb7c22e03f2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_b152f122da54f5a8" hs_bindgen_b152f122da54f5a8 :: + 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:607: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_b152f122da54f5a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_e7b5ad5e286bd111" hs_bindgen_e7b5ad5e286bd111 :: + 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:613: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_e7b5ad5e286bd111 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_c8aff791a1819581" hs_bindgen_c8aff791a1819581 :: + 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:619:5@ + +__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_c8aff791a1819581 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_58d9baacb9d2c4a2" hs_bindgen_58d9baacb9d2c4a2 :: + 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:625:5@ + +__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_58d9baacb9d2c4a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_d0b7970717d90281" hs_bindgen_d0b7970717d90281 :: + 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:630: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_d0b7970717d90281 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_d3ddd9bfc533ad6f" hs_bindgen_d3ddd9bfc533ad6f :: + 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:640:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_d3ddd9bfc533ad6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_dd22bbf9f08e8975" hs_bindgen_dd22bbf9f08e8975 :: + 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:645: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_dd22bbf9f08e8975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_772fd520f59eff29" hs_bindgen_772fd520f59eff29 :: + 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:650: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_772fd520f59eff29 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_bd360c9df9823dc5" hs_bindgen_bd360c9df9823dc5 :: + 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_bd360c9df9823dc5 + +{-| + + 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:677: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_bd360c9df9823dc5 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_a5bb97298534c786" hs_bindgen_a5bb97298534c786 :: + 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:689:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_a5bb97298534c786 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_f022ee234bd977d0" hs_bindgen_f022ee234bd977d0 :: + 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:695:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_f022ee234bd977d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_a65047e428bed51a" hs_bindgen_a65047e428bed51a :: + 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_a65047e428bed51a + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:714: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_a65047e428bed51a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_e28f06719cc05e16" hs_bindgen_e28f06719cc05e16 :: + 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_e28f06719cc05e16 + +{-| 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:747: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_e28f06719cc05e16 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_d938c62c8a2d858e" hs_bindgen_d938c62c8a2d858e :: + 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_d938c62c8a2d858e + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:771: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_d938c62c8a2d858e x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_3fdfa35c98cb197d" hs_bindgen_3fdfa35c98cb197d :: + 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_3fdfa35c98cb197d + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:798: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_3fdfa35c98cb197d x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_4dd51bc61998b0c9" hs_bindgen_4dd51bc61998b0c9 :: + 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_4dd51bc61998b0c9 + +{-| 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:817: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_4dd51bc61998b0c9 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_d5032a24c4f7a171" hs_bindgen_d5032a24c4f7a171 :: + 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_d5032a24c4f7a171 + +{-| 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:840: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_d5032a24c4f7a171 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_8_1_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_37d35da1010998b5" hs_bindgen_37d35da1010998b5 :: + 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:858: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_37d35da1010998b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_da4df97351e40771" hs_bindgen_da4df97351e40771 :: + 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:864: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_da4df97351e40771 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_0e80090a00ce57b1" hs_bindgen_0e80090a00ce57b1 :: + 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:870: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_0e80090a00ce57b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_373a8f9ea3f9c1f9" hs_bindgen_373a8f9ea3f9c1f9 :: + 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_373a8f9ea3f9c1f9 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:875: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_373a8f9ea3f9c1f9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_dc52d08487c1a3cf" hs_bindgen_dc52d08487c1a3cf :: + 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:881: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_dc52d08487c1a3cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_e4a795eb0a0cbec3" hs_bindgen_e4a795eb0a0cbec3 :: + 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_e4a795eb0a0cbec3 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:887: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_e4a795eb0a0cbec3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_a234cb0055d71f86" hs_bindgen_a234cb0055d71f86 :: + 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_a234cb0055d71f86 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:893: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_a234cb0055d71f86 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_4fd2a5aa48e656ad" hs_bindgen_4fd2a5aa48e656ad :: + 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:901: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_4fd2a5aa48e656ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_9668bb6a3c09c428" hs_bindgen_9668bb6a3c09c428 :: + 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:911: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_9668bb6a3c09c428 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_fe00df2e36eb9336" hs_bindgen_fe00df2e36eb9336 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:924: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_fe00df2e36eb9336 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_03c7026cf78c67ad" hs_bindgen_03c7026cf78c67ad :: + 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:930:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_03c7026cf78c67ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_3571e2bb6f2ddc25" hs_bindgen_3571e2bb6f2ddc25 :: + 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:935: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_3571e2bb6f2ddc25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_7b0e78fc1de6737c" hs_bindgen_7b0e78fc1de6737c :: + 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:940:28@ + +__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_7b0e78fc1de6737c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_1eba9c86cd31cec0" hs_bindgen_1eba9c86cd31cec0 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:945:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_1eba9c86cd31cec0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_daf31c50e719f6dc" hs_bindgen_daf31c50e719f6dc :: + 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:950: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_daf31c50e719f6dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_af84c76f3e9c3f2c" hs_bindgen_af84c76f3e9c3f2c :: + 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:955: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_af84c76f3e9c3f2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_d7d3d5780d397678" hs_bindgen_d7d3d5780d397678 :: + 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:960: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_d7d3d5780d397678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_56357fbf24fcf610" hs_bindgen_56357fbf24fcf610 :: + 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:966: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_56357fbf24fcf610 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_57c634dfefefbc3f" hs_bindgen_57c634dfefefbc3f :: + 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:971: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_57c634dfefefbc3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_4af3c7f9d2c0ede6" hs_bindgen_4af3c7f9d2c0ede6 :: + 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:976: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_4af3c7f9d2c0ede6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_220ea244fc38b748" hs_bindgen_220ea244fc38b748 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:981: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_220ea244fc38b748 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_fceadaa9af2574e9" hs_bindgen_fceadaa9af2574e9 :: + 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_fceadaa9af2574e9 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:986: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_fceadaa9af2574e9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_a2322a41ebff0b1e" hs_bindgen_a2322a41ebff0b1e :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:991: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_a2322a41ebff0b1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_0ebc80d83fa1cb62" hs_bindgen_0ebc80d83fa1cb62 :: + 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:998: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_0ebc80d83fa1cb62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_2c2b92e8821ab8c5" hs_bindgen_2c2b92e8821ab8c5 :: + 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:1003: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_2c2b92e8821ab8c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_bf18a6558d36c586" hs_bindgen_bf18a6558d36c586 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1005: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_bf18a6558d36c586 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_ffa94fb86939bd46" hs_bindgen_ffa94fb86939bd46 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1007: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_ffa94fb86939bd46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_33a04e31106cd9dd" hs_bindgen_33a04e31106cd9dd :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1009: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_33a04e31106cd9dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_5169d470f6dc8e10" hs_bindgen_5169d470f6dc8e10 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1010: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_5169d470f6dc8e10 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_20f51e50252a8669" hs_bindgen_20f51e50252a8669 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1012: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_20f51e50252a8669 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_1c419850e2119053" hs_bindgen_1c419850e2119053 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1013: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_1c419850e2119053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_5f046f4fb5fbf9ea" hs_bindgen_5f046f4fb5fbf9ea :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1015: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_5f046f4fb5fbf9ea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_90f6843f3b6cc450" hs_bindgen_90f6843f3b6cc450 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1016: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_90f6843f3b6cc450 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_f4fe319de1fbfa75" hs_bindgen_f4fe319de1fbfa75 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1017: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_f4fe319de1fbfa75 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_52a270eaadc2bc5e" hs_bindgen_52a270eaadc2bc5e :: + 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:1020: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_52a270eaadc2bc5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_47e2566bcf94e4fd" hs_bindgen_47e2566bcf94e4fd :: + 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:1023: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_47e2566bcf94e4fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_6e7fc8b3c26eb329" hs_bindgen_6e7fc8b3c26eb329 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1030: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_6e7fc8b3c26eb329 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_53e214bd2108f8ff" hs_bindgen_53e214bd2108f8ff :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1037: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_53e214bd2108f8ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_74f53c0af0179177" hs_bindgen_74f53c0af0179177 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1042: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_74f53c0af0179177 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_55d3d0edcc48aeba" hs_bindgen_55d3d0edcc48aeba :: + 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:1046: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_55d3d0edcc48aeba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_b913d741d817a992" hs_bindgen_b913d741d817a992 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1048: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_b913d741d817a992 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_095901d325e05025" hs_bindgen_095901d325e05025 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1049: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_095901d325e05025 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_cb2e6e9f6eb65c2e" hs_bindgen_cb2e6e9f6eb65c2e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1051: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_cb2e6e9f6eb65c2e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_e8d84c932b643ff5" hs_bindgen_e8d84c932b643ff5 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1053: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_e8d84c932b643ff5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_94edb57213bc0a14" hs_bindgen_94edb57213bc0a14 :: + 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:1056: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_94edb57213bc0a14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_146c42aee2bc1fa9" hs_bindgen_146c42aee2bc1fa9 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1058: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_146c42aee2bc1fa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_d6db8f2eda0550ac" hs_bindgen_d6db8f2eda0550ac :: + 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:1065: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_d6db8f2eda0550ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_026536b52abad1c0" hs_bindgen_026536b52abad1c0 :: + 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:1072: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_026536b52abad1c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_5bdc67d4b1a0fede" hs_bindgen_5bdc67d4b1a0fede :: + 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:1077: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_5bdc67d4b1a0fede + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_70218d460a7506d3" hs_bindgen_70218d460a7506d3 :: + 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:1082: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_70218d460a7506d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_30ba1c2e73c86f0e" hs_bindgen_30ba1c2e73c86f0e :: + 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:1100: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_30ba1c2e73c86f0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_e901dc62b9112584" hs_bindgen_e901dc62b9112584 :: + 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:1111: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_e901dc62b9112584 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_destroy@ +foreign import ccall safe "hs_bindgen_2d623ff59d01eb0e" hs_bindgen_2d623ff59d01eb0e :: + 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:1122:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_2d623ff59d01eb0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_from_string@ +foreign import ccall safe "hs_bindgen_3375e2480a117830" hs_bindgen_3375e2480a117830 :: + 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)/__]: hanlder 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:1130:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: hanlder 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_3375e2480a117830 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_register@ +foreign import ccall safe "hs_bindgen_739a43fdbf95d290" hs_bindgen_739a43fdbf95d290 :: + 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:1136: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_739a43fdbf95d290 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_view_string@ +foreign import ccall safe "hs_bindgen_27e3c9de6e981131" hs_bindgen_27e3c9de6e981131 :: + 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:1141: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_27e3c9de6e981131 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_view_name@ +foreign import ccall safe "hs_bindgen_1671813dd4079e54" hs_bindgen_1671813dd4079e54 :: + 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:1146: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_1671813dd4079e54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_equal@ +foreign import ccall safe "hs_bindgen_304178e169de6f73" hs_bindgen_304178e169de6f73 :: + 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:1153: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_304178e169de6f73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_oid_cmp@ +foreign import ccall safe "hs_bindgen_85ca65241a8047eb" hs_bindgen_85ca65241a8047eb :: + 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:1160: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_85ca65241a8047eb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_destroy@ +foreign import ccall safe "hs_bindgen_13772ae8e6cc96ab" hs_bindgen_13772ae8e6cc96ab :: + 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:1171: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_13772ae8e6cc96ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_supports_application_specific_group@ +foreign import ccall safe "hs_bindgen_bfe4503906b5ddbe" hs_bindgen_bfe4503906b5ddbe :: + 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:1178: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_bfe4503906b5ddbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_supports_named_group@ +foreign import ccall safe "hs_bindgen_976b45cc3ccef9d6" hs_bindgen_976b45cc3ccef9d6 :: + 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:1185: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_976b45cc3ccef9d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_from_params@ +foreign import ccall safe "hs_bindgen_0ddced6356638973" hs_bindgen_0ddced6356638973 :: + 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:1201: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_0ddced6356638973 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_from_ber@ +foreign import ccall safe "hs_bindgen_717ab18071146339" hs_bindgen_717ab18071146339 :: + 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:1217: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_717ab18071146339 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_from_pem@ +foreign import ccall safe "hs_bindgen_a79ca2d95a20221a" hs_bindgen_a79ca2d95a20221a :: + 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:1225: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_a79ca2d95a20221a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_from_oid@ +foreign import ccall safe "hs_bindgen_2aa057e376d31fdd" hs_bindgen_2aa057e376d31fdd :: + 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:1233: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_2aa057e376d31fdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_from_name@ +foreign import ccall safe "hs_bindgen_4c814a86e6e9e117" hs_bindgen_4c814a86e6e9e117 :: + 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:1241: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_4c814a86e6e9e117 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_view_der@ +foreign import ccall safe "hs_bindgen_4e9e3279bb3e04b2" hs_bindgen_4e9e3279bb3e04b2 :: + 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:1247: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_4e9e3279bb3e04b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_view_pem@ +foreign import ccall safe "hs_bindgen_fde8f08f67ff4354" hs_bindgen_fde8f08f67ff4354 :: + 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:1253: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_fde8f08f67ff4354 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_curve_oid@ +foreign import ccall safe "hs_bindgen_a25a72b49c2c7048" hs_bindgen_a25a72b49c2c7048 :: + 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:1258: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_a25a72b49c2c7048 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_p@ +foreign import ccall safe "hs_bindgen_efe27fd9dc982572" hs_bindgen_efe27fd9dc982572 :: + 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:1263: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_efe27fd9dc982572 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_a@ +foreign import ccall safe "hs_bindgen_d5c27cad165f7917" hs_bindgen_d5c27cad165f7917 :: + 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:1268: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_d5c27cad165f7917 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_b@ +foreign import ccall safe "hs_bindgen_83bdd319f352e76d" hs_bindgen_83bdd319f352e76d :: + 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:1273: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_83bdd319f352e76d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_g_x@ +foreign import ccall safe "hs_bindgen_c94fd993417fdc5f" hs_bindgen_c94fd993417fdc5f :: + 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:1278: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_c94fd993417fdc5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_g_y@ +foreign import ccall safe "hs_bindgen_265f1ed786befbd3" hs_bindgen_265f1ed786befbd3 :: + 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:1283: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_265f1ed786befbd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_get_order@ +foreign import ccall safe "hs_bindgen_6e53137dd0ea8476" hs_bindgen_6e53137dd0ea8476 :: + 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:1288: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_6e53137dd0ea8476 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_group_equal@ +foreign import ccall safe "hs_bindgen_ed65b490ba6e2571" hs_bindgen_ed65b490ba6e2571 :: + 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:1295: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_ed65b490ba6e2571 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_a6da5d346a7f7659" hs_bindgen_a6da5d346a7f7659 :: + 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:1311: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_a6da5d346a7f7659 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_ec_privkey_create@ +foreign import ccall safe "hs_bindgen_328bf1a1664ac1b4" hs_bindgen_328bf1a1664ac1b4 :: + 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:1321: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_328bf1a1664ac1b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_6b8ccc56bfa8765a" hs_bindgen_6b8ccc56bfa8765a :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1325: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_6b8ccc56bfa8765a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_e4e89d3b765767d4" hs_bindgen_e4e89d3b765767d4 :: + 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:1328: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_e4e89d3b765767d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_0e1249b8af892af6" hs_bindgen_0e1249b8af892af6 :: + 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:1330: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_0e1249b8af892af6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_53fbcb4ff0cf3a1f" hs_bindgen_53fbcb4ff0cf3a1f :: + 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:1332: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_53fbcb4ff0cf3a1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_53057afb8558cc43" hs_bindgen_53057afb8558cc43 :: + 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:1334: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_53057afb8558cc43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_5c61e06554faf89f" hs_bindgen_5c61e06554faf89f :: + 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:1336: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_5c61e06554faf89f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_a83d0ac3cabd4732" hs_bindgen_a83d0ac3cabd4732 :: + 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:1356: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_a83d0ac3cabd4732 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_fe2273c07b74c15f" hs_bindgen_fe2273c07b74c15f :: + 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:1378: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_fe2273c07b74c15f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_4359153518202f88" hs_bindgen_4359153518202f88 :: + 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_4359153518202f88 + +{-| 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:1386: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_4359153518202f88 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_c53f47b777eb1f01" hs_bindgen_c53f47b777eb1f01 :: + 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:1391:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_c53f47b777eb1f01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_c609d65db2681269" hs_bindgen_c609d65db2681269 :: + 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:1405: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_c609d65db2681269 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_1f3982c4b0f038fb" hs_bindgen_1f3982c4b0f038fb :: + 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:1410: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_1f3982c4b0f038fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_eeb06487d1d3cb5e" hs_bindgen_eeb06487d1d3cb5e :: + 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:1415: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_eeb06487d1d3cb5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_451defb0c45d4c5d" hs_bindgen_451defb0c45d4c5d :: + 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:1420: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_451defb0c45d4c5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_47300f18d705c6b7" hs_bindgen_47300f18d705c6b7 :: + 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:1422: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_47300f18d705c6b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_3855ec5dcef65fa7" hs_bindgen_3855ec5dcef65fa7 :: + 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:1429: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_3855ec5dcef65fa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_eb603ff4068b71ad" hs_bindgen_eb603ff4068b71ad :: + 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:1445: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_eb603ff4068b71ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_98cdfd93854e9abe" hs_bindgen_98cdfd93854e9abe :: + 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:1461: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_98cdfd93854e9abe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_740ae0b250f7313b" hs_bindgen_740ae0b250f7313b :: + 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:1478: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_740ae0b250f7313b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_ab3bc76fed5f1574" hs_bindgen_ab3bc76fed5f1574 :: + 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:1493: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_ab3bc76fed5f1574 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_d1b922b3ac1d1192" hs_bindgen_d1b922b3ac1d1192 :: + 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:1509: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_d1b922b3ac1d1192 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_6bada4724eb9481e" hs_bindgen_6bada4724eb9481e :: + 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:1524: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_6bada4724eb9481e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_7a4a9841e126d530" hs_bindgen_7a4a9841e126d530 :: + 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_7a4a9841e126d530 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1535: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_7a4a9841e126d530 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_cb8a8f75eac9d027" hs_bindgen_cb8a8f75eac9d027 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1537: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_cb8a8f75eac9d027 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_ac83263b35d82c0b" hs_bindgen_ac83263b35d82c0b :: + 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:1540: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_ac83263b35d82c0b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_63303b44359c7436" hs_bindgen_63303b44359c7436 :: + 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:1545: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_63303b44359c7436 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_e4e1a301021d2198" hs_bindgen_e4e1a301021d2198 :: + 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:1550: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_e4e1a301021d2198 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_c618837004ffd688" hs_bindgen_c618837004ffd688 :: + 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:1555: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_c618837004ffd688 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_2135c0df4f52be98" hs_bindgen_2135c0df4f52be98 :: + 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:1557: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_2135c0df4f52be98 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_ead3b2d10abd6f52" hs_bindgen_ead3b2d10abd6f52 :: + 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:1562: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_ead3b2d10abd6f52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_e83a6b72a7dfb100" hs_bindgen_e83a6b72a7dfb100 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1564: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_e83a6b72a7dfb100 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_348fbf05902e0582" hs_bindgen_348fbf05902e0582 :: + 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:1567: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_348fbf05902e0582 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_0d91e4bb3f7e6d01" hs_bindgen_0d91e4bb3f7e6d01 :: + 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:1572:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_0d91e4bb3f7e6d01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_e7cbc918900fb275" hs_bindgen_e7cbc918900fb275 :: + 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:1577: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_e7cbc918900fb275 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_14f5209ce8382923" hs_bindgen_14f5209ce8382923 :: + 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:1579: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_14f5209ce8382923 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_oid@ +foreign import ccall safe "hs_bindgen_1af769421bc84fd3" hs_bindgen_1af769421bc84fd3 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1585: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_1af769421bc84fd3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_oid@ +foreign import ccall safe "hs_bindgen_2b07b20e4909bc12" hs_bindgen_2b07b20e4909bc12 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1588: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_2b07b20e4909bc12 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_stateful_operation@ +foreign import ccall safe "hs_bindgen_11b0b17f6c399596" hs_bindgen_11b0b17f6c399596 :: + 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:1595: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_11b0b17f6c399596 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_remaining_operations@ +foreign import ccall safe "hs_bindgen_615c196fcf11ce66" hs_bindgen_615c196fcf11ce66 :: + 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:1602: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_615c196fcf11ce66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_baad41e29ab38e0e" hs_bindgen_baad41e29ab38e0e :: + 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:1607: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_baad41e29ab38e0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_21d7152342a8b081" hs_bindgen_21d7152342a8b081 :: + 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_21d7152342a8b081 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1609: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_21d7152342a8b081 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_a15b3afc2dab7f36" hs_bindgen_a15b3afc2dab7f36 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1612: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_a15b3afc2dab7f36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_aad1006480673b8b" hs_bindgen_aad1006480673b8b :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1614: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_aad1006480673b8b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_d7e6f9031a61a640" hs_bindgen_d7e6f9031a61a640 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1616: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_d7e6f9031a61a640 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_a4a58ee6e9969bfc" hs_bindgen_a4a58ee6e9969bfc :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1618: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_a4a58ee6e9969bfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_ac01c998424d46d6" hs_bindgen_ac01c998424d46d6 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1620: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_ac01c998424d46d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_3412844e49661401" hs_bindgen_3412844e49661401 :: + 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:1623: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_3412844e49661401 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_b182f5e2664a1bff" hs_bindgen_b182f5e2664a1bff :: + 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:1625: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_b182f5e2664a1bff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_86808901f6df55ce" hs_bindgen_86808901f6df55ce :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1628: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_86808901f6df55ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_6e1890614dfd2744" hs_bindgen_6e1890614dfd2744 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1630: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_6e1890614dfd2744 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_ee1758a80acb4e7a" hs_bindgen_ee1758a80acb4e7a :: + 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:1636: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_ee1758a80acb4e7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_897e8ac4c15fd7fd" hs_bindgen_897e8ac4c15fd7fd :: + 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:1639: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_897e8ac4c15fd7fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_ce30db2aab896130" hs_bindgen_ce30db2aab896130 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1642: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_ce30db2aab896130 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_cc12560ad67d1d4a" hs_bindgen_cc12560ad67d1d4a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1645: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_cc12560ad67d1d4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_8dd171970aaed98c" hs_bindgen_8dd171970aaed98c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1647: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_8dd171970aaed98c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_8f1d50774ab6daa6" hs_bindgen_8f1d50774ab6daa6 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1649: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_8f1d50774ab6daa6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_2e990d83f997cb4b" hs_bindgen_2e990d83f997cb4b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1651: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_2e990d83f997cb4b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_7141d132efad3618" hs_bindgen_7141d132efad3618 :: + 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:1666: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_7141d132efad3618 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_ec41849a3c6f6732" hs_bindgen_ec41849a3c6f6732 :: + 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:1680: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_ec41849a3c6f6732 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_979df032294d020e" hs_bindgen_979df032294d020e :: + 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:1698: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_979df032294d020e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_ee498aeef10a5d1e" hs_bindgen_ee498aeef10a5d1e :: + 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:1713: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_ee498aeef10a5d1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_fa037291bfa35890" hs_bindgen_fa037291bfa35890 :: + 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_fa037291bfa35890 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1719: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_fa037291bfa35890 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_6cd129438cc8267a" hs_bindgen_6cd129438cc8267a :: + 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_6cd129438cc8267a + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1721: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_6cd129438cc8267a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_10614486a96b72e7" hs_bindgen_10614486a96b72e7 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1724: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_10614486a96b72e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_379e8d4dc8d52d46" hs_bindgen_379e8d4dc8d52d46 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1727: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_379e8d4dc8d52d46 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_f34bcd05a3460ab9" hs_bindgen_f34bcd05a3460ab9 :: + 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_f34bcd05a3460ab9 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1733: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_f34bcd05a3460ab9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_eff32151afb941e0" hs_bindgen_eff32151afb941e0 :: + 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_eff32151afb941e0 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1735: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_eff32151afb941e0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_a2093f7c2fe097e3" hs_bindgen_a2093f7c2fe097e3 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1738: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_a2093f7c2fe097e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_601188cb56ec4365" hs_bindgen_601188cb56ec4365 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1741: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_601188cb56ec4365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_570ebd4f7b89cb91" hs_bindgen_570ebd4f7b89cb91 :: + 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_570ebd4f7b89cb91 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1747: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_570ebd4f7b89cb91 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_1256b49555324874" hs_bindgen_1256b49555324874 :: + 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_1256b49555324874 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1749: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_1256b49555324874 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_c63f3a00ed652f9f" hs_bindgen_c63f3a00ed652f9f :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1752: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_c63f3a00ed652f9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_506dec65077b3d03" hs_bindgen_506dec65077b3d03 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1755: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_506dec65077b3d03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_5e20873696c068af" hs_bindgen_5e20873696c068af :: + 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_5e20873696c068af + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1761: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_5e20873696c068af x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_e06f12b4816bb5a4" hs_bindgen_e06f12b4816bb5a4 :: + 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_e06f12b4816bb5a4 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1763: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_e06f12b4816bb5a4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_a234a1b6c77e1fe5" hs_bindgen_a234a1b6c77e1fe5 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1766: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_a234a1b6c77e1fe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_217e3dbcd98838b5" hs_bindgen_217e3dbcd98838b5 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1769: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_217e3dbcd98838b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_1436db20215e02e9" hs_bindgen_1436db20215e02e9 :: + 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_1436db20215e02e9 + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1776: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_1436db20215e02e9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_658084c939849e9a" hs_bindgen_658084c939849e9a :: + 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_658084c939849e9a + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1779: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_658084c939849e9a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_d441605f27bdbbf4" hs_bindgen_d441605f27bdbbf4 :: + 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_d441605f27bdbbf4 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1790: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_d441605f27bdbbf4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_2ccf09e161e9041f" hs_bindgen_2ccf09e161e9041f :: + 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_2ccf09e161e9041f + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1793: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_2ccf09e161e9041f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_62cbc91b46561c78" hs_bindgen_62cbc91b46561c78 :: + 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:1797: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_62cbc91b46561c78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_69ae0e6216725fa6" hs_bindgen_69ae0e6216725fa6 :: + 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:1801: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_69ae0e6216725fa6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_7ec5f4f7df82371c" hs_bindgen_7ec5f4f7df82371c :: + 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_7ec5f4f7df82371c + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1808: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_7ec5f4f7df82371c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_a22308dfd0b90b0b" hs_bindgen_a22308dfd0b90b0b :: + 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_a22308dfd0b90b0b + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1811: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_a22308dfd0b90b0b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_beffdc36ac25de16" hs_bindgen_beffdc36ac25de16 :: + 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_beffdc36ac25de16 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1818: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_beffdc36ac25de16 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_905fa6fa2afffc4d" hs_bindgen_905fa6fa2afffc4d :: + 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_905fa6fa2afffc4d + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1824: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_905fa6fa2afffc4d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_3b860839a9109478" hs_bindgen_3b860839a9109478 :: + 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_3b860839a9109478 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1834: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_3b860839a9109478 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_e940f7f344602dc7" hs_bindgen_e940f7f344602dc7 :: + 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_e940f7f344602dc7 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1837: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_e940f7f344602dc7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_56749ba4e68075e2" hs_bindgen_56749ba4e68075e2 :: + 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_56749ba4e68075e2 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1844: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_56749ba4e68075e2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_ec9f7cc35f6cf74a" hs_bindgen_ec9f7cc35f6cf74a :: + 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_ec9f7cc35f6cf74a + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1847: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_ec9f7cc35f6cf74a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_6165126aa8c941ba" hs_bindgen_6165126aa8c941ba :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1853: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_6165126aa8c941ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_13dfae1847776714" hs_bindgen_13dfae1847776714 :: + 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:1856: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_13dfae1847776714 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_65d78ce997908b80" hs_bindgen_65d78ce997908b80 :: + 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:1859: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_65d78ce997908b80 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_f00e233d0dd12949" hs_bindgen_f00e233d0dd12949 :: + 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:1862: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_f00e233d0dd12949 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_0588e5c24f3838ee" hs_bindgen_0588e5c24f3838ee :: + 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:1865: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_0588e5c24f3838ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_598c815c9cd2343c" hs_bindgen_598c815c9cd2343c :: + 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:1868: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_598c815c9cd2343c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_3400b4b32fe5470c" hs_bindgen_3400b4b32fe5470c :: + 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:1871: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_3400b4b32fe5470c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_f628d4bbfd6edefa" hs_bindgen_f628d4bbfd6edefa :: + 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:1875: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_f628d4bbfd6edefa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_c8491949549f7f78" hs_bindgen_c8491949549f7f78 :: + 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:1879: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_c8491949549f7f78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_c9ccda52501d1315" hs_bindgen_c9ccda52501d1315 :: + 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:1882: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_c9ccda52501d1315 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_c783f768d35295c3" hs_bindgen_c783f768d35295c3 :: + 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:1889: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_c783f768d35295c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_cc3db1c4803d380b" hs_bindgen_cc3db1c4803d380b :: + 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:1897: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_cc3db1c4803d380b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_718170db0fd8f842" hs_bindgen_718170db0fd8f842 :: + 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:1902: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_718170db0fd8f842 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_2eabf7bdee64bc90" hs_bindgen_2eabf7bdee64bc90 :: + 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:1905: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_2eabf7bdee64bc90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_db8e5fd1e31edce9" hs_bindgen_db8e5fd1e31edce9 :: + 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_db8e5fd1e31edce9 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1908: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_db8e5fd1e31edce9 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_e086bf8d79fa28d6" hs_bindgen_e086bf8d79fa28d6 :: + 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:1921: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_e086bf8d79fa28d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_fb6f9ccf5e974c6c" hs_bindgen_fb6f9ccf5e974c6c :: + 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:1926: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_fb6f9ccf5e974c6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_80536925f0ffc493" hs_bindgen_80536925f0ffc493 :: + 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:1929: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_80536925f0ffc493 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_45b92d36ecdd675d" hs_bindgen_45b92d36ecdd675d :: + 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_45b92d36ecdd675d + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1932: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_45b92d36ecdd675d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_59d0ac001db87ca6" hs_bindgen_59d0ac001db87ca6 :: + 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:1944: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_59d0ac001db87ca6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_0c75525f161bf1d7" hs_bindgen_0c75525f161bf1d7 :: + 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:1949: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_0c75525f161bf1d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_647568d33c45bcdb" hs_bindgen_647568d33c45bcdb :: + 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:1951: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_647568d33c45bcdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_1df3d95e4a36d567" hs_bindgen_1df3d95e4a36d567 :: + 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_1df3d95e4a36d567 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1953: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_1df3d95e4a36d567 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_9ba303a4fdfcdc3b" hs_bindgen_9ba303a4fdfcdc3b :: + 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:1956: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_9ba303a4fdfcdc3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_0d7fd69a7b45cc26" hs_bindgen_0d7fd69a7b45cc26 :: + 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:1964: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_0d7fd69a7b45cc26 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_fda6153e9f523d35" hs_bindgen_fda6153e9f523d35 :: + 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:1972: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_fda6153e9f523d35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_cfddff195c2328b1" hs_bindgen_cfddff195c2328b1 :: + 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_cfddff195c2328b1 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1974: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_cfddff195c2328b1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_6ac244999f8ef795" hs_bindgen_6ac244999f8ef795 :: + 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_6ac244999f8ef795 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1975: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_6ac244999f8ef795 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_961b989b99a4cbf6" hs_bindgen_961b989b99a4cbf6 :: + 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:1983: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_961b989b99a4cbf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_ec75ec0fda68c8ca" hs_bindgen_ec75ec0fda68c8ca :: + 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:1988: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_ec75ec0fda68c8ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_fea137d5f254d292" hs_bindgen_fea137d5f254d292 :: + 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:1990: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_fea137d5f254d292 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_0ad5649d10c63998" hs_bindgen_0ad5649d10c63998 :: + 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:1993: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_0ad5649d10c63998 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_8213179b9587b72c" hs_bindgen_8213179b9587b72c :: + 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:1995: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_8213179b9587b72c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_a0c655fd10bfe782" hs_bindgen_a0c655fd10bfe782 :: + 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_a0c655fd10bfe782 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1998: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_a0c655fd10bfe782 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_5705b1a67401a7bd" hs_bindgen_5705b1a67401a7bd :: + 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:2012: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_5705b1a67401a7bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_ac2441555c343d1b" hs_bindgen_ac2441555c343d1b :: + 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:2017: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_ac2441555c343d1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_5413bcca78af9eba" hs_bindgen_5413bcca78af9eba :: + 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:2020: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_5413bcca78af9eba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_de784c8116b57330" hs_bindgen_de784c8116b57330 :: + 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:2025: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_de784c8116b57330 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_b1f514715341cf0e" hs_bindgen_b1f514715341cf0e :: + 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_b1f514715341cf0e + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2029: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_b1f514715341cf0e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_385e1a885d91a749" hs_bindgen_385e1a885d91a749 :: + 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:2042: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_385e1a885d91a749 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_9406bec4621a4fe8" hs_bindgen_9406bec4621a4fe8 :: + 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:2047: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_9406bec4621a4fe8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_1dbc232b48d656ed" hs_bindgen_1dbc232b48d656ed :: + 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:2050: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_1dbc232b48d656ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_57bcdd9d08387e28" hs_bindgen_57bcdd9d08387e28 :: + 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_57bcdd9d08387e28 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2055: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_57bcdd9d08387e28 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_c4fb5c16712c0dfc" hs_bindgen_c4fb5c16712c0dfc :: + 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:2068: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_c4fb5c16712c0dfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_22b38b563b373a40" hs_bindgen_22b38b563b373a40 :: + 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_22b38b563b373a40 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2075: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_22b38b563b373a40 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_dea6a3d83015c717" hs_bindgen_dea6a3d83015c717 :: + 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_dea6a3d83015c717 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2090: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_dea6a3d83015c717 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_f5f61179f6b99622" hs_bindgen_f5f61179f6b99622 :: + 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_f5f61179f6b99622 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2105: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_f5f61179f6b99622 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_0d839b9aa4b92dae" hs_bindgen_0d839b9aa4b92dae :: + 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:2106: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_0d839b9aa4b92dae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_11666bdc64bca4cc" hs_bindgen_11666bdc64bca4cc :: + 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:2111: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_11666bdc64bca4cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_7503e927aca8457f" hs_bindgen_7503e927aca8457f :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2113: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_7503e927aca8457f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_47def11a4f0f55c1" hs_bindgen_47def11a4f0f55c1 :: + 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:2116: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_47def11a4f0f55c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_b6bb642d8a7a0d2f" hs_bindgen_b6bb642d8a7a0d2f :: + 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:2117: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_b6bb642d8a7a0d2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_86898b1b087fcbc0" hs_bindgen_86898b1b087fcbc0 :: + 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:2119: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_86898b1b087fcbc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_9f6c747867d9d3be" hs_bindgen_9f6c747867d9d3be :: + 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:2120: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_9f6c747867d9d3be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_45fce850fa72e08e" hs_bindgen_45fce850fa72e08e :: + 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:2123: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_45fce850fa72e08e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_41263a208a5db869" hs_bindgen_41263a208a5db869 :: + 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:2125: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_41263a208a5db869 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_c72b351af73500c7" hs_bindgen_c72b351af73500c7 :: + 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:2126: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_c72b351af73500c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_70c2a9bfdaad9f9b" hs_bindgen_70c2a9bfdaad9f9b :: + 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:2127: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_70c2a9bfdaad9f9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_431352f981bfaf09" hs_bindgen_431352f981bfaf09 :: + 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:2129: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_431352f981bfaf09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_07891a570f2e9eea" hs_bindgen_07891a570f2e9eea :: + 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:2132: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_07891a570f2e9eea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_2ba50782eea13147" hs_bindgen_2ba50782eea13147 :: + 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:2134: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_2ba50782eea13147 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_30f28ebb3622cd94" hs_bindgen_30f28ebb3622cd94 :: + 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:2137: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_30f28ebb3622cd94 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_e83f2ee2530249f3" hs_bindgen_e83f2ee2530249f3 :: + 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:2141: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_e83f2ee2530249f3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_6a6d451524418033" hs_bindgen_6a6d451524418033 :: + 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:2144: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_6a6d451524418033 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_2655595899f3d2b1" hs_bindgen_2655595899f3d2b1 :: + 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:2147: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_2655595899f3d2b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_b44ec899e5f9557f" hs_bindgen_b44ec899e5f9557f :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2163: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_b44ec899e5f9557f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_7b19c843d828fc2f" hs_bindgen_7b19c843d828fc2f :: + 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:2169: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_7b19c843d828fc2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_52e734989b593003" hs_bindgen_52e734989b593003 :: + 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:2180: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_52e734989b593003 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_4f5120a6d8a987b4" hs_bindgen_4f5120a6d8a987b4 :: + 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:2195: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_4f5120a6d8a987b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_28d0cd6699c5155b" hs_bindgen_28d0cd6699c5155b :: + 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:2203: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_28d0cd6699c5155b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_d639164e08523e39" hs_bindgen_d639164e08523e39 :: + 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_d639164e08523e39 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2205: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_d639164e08523e39 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_1426f1e1c83624b6" hs_bindgen_1426f1e1c83624b6 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2207: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_1426f1e1c83624b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_68d013855b934397" hs_bindgen_68d013855b934397 :: + 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:2213: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_68d013855b934397 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_32dd51dbab5c20a0" hs_bindgen_32dd51dbab5c20a0 :: + 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:2220: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_32dd51dbab5c20a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_37c17ef36ef40d3a" hs_bindgen_37c17ef36ef40d3a :: + 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_37c17ef36ef40d3a + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2238: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_37c17ef36ef40d3a (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_67030fb1ae2d8df9" hs_bindgen_67030fb1ae2d8df9 :: + 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_67030fb1ae2d8df9 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2247: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_67030fb1ae2d8df9 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_e2bedd0aa9c9b895" hs_bindgen_e2bedd0aa9c9b895 :: + 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_e2bedd0aa9c9b895 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2255: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_e2bedd0aa9c9b895 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_a5a00e60a8b29d41" hs_bindgen_a5a00e60a8b29d41 :: + 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_a5a00e60a8b29d41 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2265: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_a5a00e60a8b29d41 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_9a651d88548d937e" hs_bindgen_9a651d88548d937e :: + 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_9a651d88548d937e + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2284: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_9a651d88548d937e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_f0f4c2136fb3dc4f" hs_bindgen_f0f4c2136fb3dc4f :: + 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:2291:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_f0f4c2136fb3dc4f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_25299fbdfb2ecd2f" hs_bindgen_25299fbdfb2ecd2f :: + 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:2297: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_25299fbdfb2ecd2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_e180b567b331c773" hs_bindgen_e180b567b331c773 :: + 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:2303: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_e180b567b331c773 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_6b0eb68674669879" hs_bindgen_6b0eb68674669879 :: + 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_6b0eb68674669879 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2316: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_6b0eb68674669879 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_c422fce26535060e" hs_bindgen_c422fce26535060e :: + 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:2324:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_c422fce26535060e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_c147d2f1a55f0c61" hs_bindgen_c147d2f1a55f0c61 :: + 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:2333: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_c147d2f1a55f0c61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_5dec731d0af638ce" hs_bindgen_5dec731d0af638ce :: + 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:2344: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_5dec731d0af638ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_b95ce61188c2b797" hs_bindgen_b95ce61188c2b797 :: + 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_b95ce61188c2b797 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2355: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_b95ce61188c2b797 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_0727f25aa17ef813" hs_bindgen_0727f25aa17ef813 :: + 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:2362:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_0727f25aa17ef813 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_3c26e713094a59be" hs_bindgen_3c26e713094a59be :: + 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_3c26e713094a59be + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2365: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_3c26e713094a59be x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_7cf1c7ee83b58e4d" hs_bindgen_7cf1c7ee83b58e4d :: + 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_7cf1c7ee83b58e4d + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2368: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_7cf1c7ee83b58e4d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_11b9a748137759f6" hs_bindgen_11b9a748137759f6 :: + 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:2380: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_11b9a748137759f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_a74f15796c7a0fcd" hs_bindgen_a74f15796c7a0fcd :: + 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:2388: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_a74f15796c7a0fcd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_8ed94ef025c5eb54" hs_bindgen_8ed94ef025c5eb54 :: + 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_8ed94ef025c5eb54 + +{-| 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:2403: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_8ed94ef025c5eb54 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_5c7ed602a11bb1da" hs_bindgen_5c7ed602a11bb1da :: + 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_5c7ed602a11bb1da + +{-| 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:2422: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_5c7ed602a11bb1da x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_982051322703fc1d" hs_bindgen_982051322703fc1d :: + 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_982051322703fc1d + +{-| 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:2438: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_982051322703fc1d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_f41f85f7df607eb0" hs_bindgen_f41f85f7df607eb0 :: + 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_f41f85f7df607eb0 + +{-| 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:2465: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_f41f85f7df607eb0 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_8_1_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_9c8c5a282cfba6c2" hs_bindgen_9c8c5a282cfba6c2 :: + 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:2483: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_9c8c5a282cfba6c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_ccf14fd8bf25037c" hs_bindgen_ccf14fd8bf25037c :: + 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:2504: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_ccf14fd8bf25037c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_6ad8599e918526ab" hs_bindgen_6ad8599e918526ab :: + 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:2525: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_6ad8599e918526ab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_826106e6b0942777" hs_bindgen_826106e6b0942777 :: + 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:2550:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_826106e6b0942777 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_693b3f7eec1b8f0a" hs_bindgen_693b3f7eec1b8f0a :: + 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:2558: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_693b3f7eec1b8f0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_d685155a383d8442" hs_bindgen_d685155a383d8442 :: + 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:2568: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_d685155a383d8442 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_ctx_from_esys@ +foreign import ccall safe "hs_bindgen_4eef1a3bf3f299f4" hs_bindgen_4eef1a3bf3f299f4 :: + 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:2579: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_4eef1a3bf3f299f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_e5612719bb14c4e7" hs_bindgen_e5612719bb14c4e7 :: + 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:2591: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_e5612719bb14c4e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_c806ec315513fcf8" hs_bindgen_c806ec315513fcf8 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2598: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_c806ec315513fcf8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_c9790bd33065efb2" hs_bindgen_c9790bd33065efb2 :: + 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:2612: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_c9790bd33065efb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall safe "hs_bindgen_08c1dd12e52ea2b2" hs_bindgen_08c1dd12e52ea2b2 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2624: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_08c1dd12e52ea2b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_96577551e8c40191" hs_bindgen_96577551e8c40191 :: + 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:2635: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_96577551e8c40191 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_5014f16eb7d175b0" hs_bindgen_5014f16eb7d175b0 :: + 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:2647: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_5014f16eb7d175b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_ff6ee6026af17148" hs_bindgen_ff6ee6026af17148 :: + 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:2654: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_ff6ee6026af17148 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/Unsafe.hs new file mode 100644 index 00000000..f02310c5 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_8_1/Unsafe.hs @@ -0,0 +1,14907 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_8_1.Unsafe where + +import Botan.Bindings.Generated.Botan_3_8_1 +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_28726c4ac447cb13 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_dd22e5db79c8e8a5 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_997f94b3869a4ce5 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_c4f169fbe15d613a (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_f3e764504cc0eeb1 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_f5f27ecf8d86e8ec (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_a309ed3a832e4934 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_240f4db6a6600468 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_c036330e90802cc5 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_91e37daf03280527 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f259efa9270c5bda (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7bd2c956519911a7 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3f48e9dc9eceff21 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a01e51332a8b1513 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bc32ebfea4fb03e5 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_eabde7b3ee2ffd64 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7c0bba4d217f72b1 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1eb2295987a5a75f (" + , " 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_9fb34facc619ab09 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4dce37cbf4800000 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a721e9f09cae46f9 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d46ef8cc7d2308c0 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c87c4832ce493a48 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c3ffef75754681c4 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d6fc404199986c4a (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e420a64fe712af27 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a8d9dca7efce7cfb (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fe10cf5bc22e11de (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6ccbe6ee1fb62a3 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f12eaecf49fa76ed (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3c5202c69669b30 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_6eb397e3ffdcd2d4 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cc294f1e8c6a6e38 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_414a45b52e0570d2 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e7649727a98ac2e4 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_42a53a701d89db03 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ec24c9c2258e2e6c (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8df526e15a9b028d (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23dae717bd17f8bf (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_743f3adc61d3e551 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_fb9f0d20b7e30e9d (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_67d59a0e7c9456f5 (" + , " 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_634cacb1eefa6cbe (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_81d8d893de90b378 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9f721f339f329bde (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5c0de0f7fc192c33 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2324940a747957f8 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_08458bf4513668e8 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ea078a76afa9d9a3 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_09e74448cd09478e (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_d40b88e54c2eccb2 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_94613abec4a0f20e (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0a1b2158ed3c7c95 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2a3a4d5eb60a58b8 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_60ac29bc41ed5078 (" + , " 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_eb8af20b208a3171 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_939fb0f0d48c39e9 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_313d985aab96d4cd (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_787c9ea5f692dfdd (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d09a3fa73812f9e0 (" + , " 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_804af5a1514a4855 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_8ee9eb150e25fc14 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a5163f95963dfa56 (" + , " 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_187a36177885ae61 (" + , " 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_0af47032eb9b8e81 (" + , " 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_3ae3643df004579d (" + , " 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_50e40a6916296b27 (" + , " 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_2c56b29aaf9cfee8 (" + , " 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_858d872af1280b36 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5cfefab7265f102f (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_11749a09f4d53141 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_658cdedb852f90fb (" + , " 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_95bd6baf4c8b1c06 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_b7411ab44e07202e (" + , " 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_36523c3faa4195bd (" + , " 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_bb595f35621efd0f (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2276250268f3b62a (" + , " 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_ff509fc47116dbd2 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_8f361ac1316fd663 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_185d52bc77bcca89 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_576e7b9b939cfd9e (" + , " 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_400cce0014e45bad (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_bf37c3a7e723c882 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_533856d16d16ca6d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f01c989f17f0326f (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_83c1a1dd65257096 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1a907620b2bfe1a6 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e55ea75c397e1571 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ec7325bbb3e1f7aa (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c3e22c714c2e0fbe (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c358b3978a8e0429 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d0000ef91d9930e0 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_dc82d91c9ed96ced (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_4435738f1c485de7 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_77367aa88a21c15c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_61946e541d1f6ac2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_07804bd73f1749a5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_6335ac293fe8ec38 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b27faf5333f1f069 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_01e6cdd09aa7a5fc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a6880a5aa332a4d3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_423ec10b1c394630 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1e1347e1f2666ca4 (" + , " 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_9a7eca858d4f15ae (" + , " 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_4770bf8c95ea5346 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2d8ea851105790f (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_12e4f6b601547f6b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5a7d4d2e780195bd (" + , " 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_c3b6df33c65ec365 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1a49b5cd381256f4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e23344507ba93afc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c86382992d13356a (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7da884d00808aef2 (" + , " 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_5ef84434eeb78719 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4bcce5165f3d9c7a (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2145797c54a8e626 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_49675f485ee68754 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d35f23cb8b805f1 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_857fec7bbfd07718 (" + , " 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_cb7f41a68ef5b12a (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b6274f5ac0de882 (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fd844c5d48c24599 (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f2f6d0337b4a053 (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2bc9a6ca5a8083f (" + , " 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_f56b20bc43eb0b25 (" + , " 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_1ef12f9ca48cfe0f (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_63c769c68fef3a0c (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8926b3b951c20e89 (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1621a3c8802c39bf (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_b4c68f834f538bb3 (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8614b45f567f1744 (" + , " 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_555e5dd91553e0b3 (" + , " 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_d4d28b02e9830455 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d7ccb24edd77b62d (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_62e86b550abd01f0 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_21367b79ea2f6245 (" + , " 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_1d83ff59946f0f3a (" + , " 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_1bdca5400c27db0f (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f02c1595f985be21 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_beca1f3ac7313b7d (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0676a38feb1bb368 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc49e4dda80c3bf1 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8e2072dcaa904a19 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d38dd659da04759c (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_050d1bce649c9211 (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d5c8ba1797ac7003 (" + , " 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_48e4da43882efe8f (" + , " 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_815d60c0e8dfe1c4 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_874cf99fe3b39005 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_025ebc700deff872 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3bd340d4f0851602 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82370be0c7943656 (" + , " 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_377f3d86295dd0e7 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0c3a0e2cdb19246f (" + , " 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_c0abdc9f45fbe604 (" + , " 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_b61d7fe4c9a5ecd8 (" + , " 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_ad8a33aa8085bedd (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_98394c27af326d1a (" + , " 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_c31038255d7977ad (" + , " 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_fb14671f9b0bca1a (" + , " 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_df38285b80ea15c5 (" + , " 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_b55738bbfb03b462 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_adef25cd636ad3c3 (" + , " 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_7c53dbebfaa841d8 (" + , " 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_510b0bbc9071b70a (" + , " 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_84c9ee3656e86ae4 (" + , " 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_26e210469e455471 (" + , " 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_179911899fa9f1a5 (" + , " 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_6a326aa2f58ce185 (" + , " 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_6bfde232ca5df5f9 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5277c79d81708cb (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a8003e43047d604e (" + , " 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_e5076a2af1eec8a8 (" + , " 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_d84df4e20855e7d5 (" + , " 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_e6354945f0606fba (" + , " 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_215bdf619476c3e9 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aa93d5db4ecb35dc (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_171f3186146c68e6 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_946045b93827dcc6 (" + , " 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_3469683aab884d3b (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_327b9e86bfc4f4fd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9c3acb8ba17977c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f84c3c737cb6c73 (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5c39d3141e77a87b (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8adadb362ec8e24e (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6b27700b1ca284ad (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_185153034fc04fe2 (" + , " 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_fb2c5bef2961c8d0 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e35b3669f15978d3 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f484febd4eb96b35 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_182d0b10f4003529 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2ea6aece3cf464d6 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_16bde2a1203aee15 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fb6104d693ea0361 (" + , " 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_616af300012b318f (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c193df14293a43c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6a2ace41a3e57cc0 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50c67da689f50438 (" + , " 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_202c4d5be9f41366 (" + , " 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_72f4fce0fceeb975 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_591580c3bf060f9c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b486488d3db3df3 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2773922182f7eb11 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_155246b453f8dfdd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5016c727b36d6030 (" + , " 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_a866ae875c864adc (" + , " 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_877da6269c6abd52 (" + , " 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_d7e1bae1941679bc (" + , " 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_3a0c04c25ffe0d49 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_468d811af2f97daa (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e0518844b1226a13 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8cb5db42ed8f0173 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11434e047a9024b0 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b5b90e968b5fa68f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_29ccf3f402344b06 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_774d264bd34f9745 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_417ca36529c21470 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60a9f5eb0c3f3a44 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_224e3c4a41780d1f (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_22040a494d0ae4a2 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f5bc59155213f584 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a46f239d2f82e9cc (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_305a0ddf0c5d5db5 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_812f4fa0e40f8aa9 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6ce9d07e36191c3d (" + , " 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_cee73367142f4ee2 (" + , " 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_cbc4b6084cba671d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2afe52352cd3854 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_692ea29191319584 (" + , " 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_c6cea4ad87b5d908 (" + , " 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_dc04e2b597e96e33 (" + , " 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_072a8d1188bb4cb7 (" + , " 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_c8421ded6de22fca (" + , " 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_e2355f20d4fe4362 (" + , " 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_5bc79e00561bfab8 (" + , " 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_50ff56a754037b0e (" + , " 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_b5c5b745c66f2f81 (" + , " 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_e1825ff4a309fb35 (" + , " 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_7619a0e64fb39cb9 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_18467afc7ae89375 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d6f3ac103a18e5e6 (" + , " 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_8271dad6f49a6f64 (" + , " 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_761898c8f5b54c13 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_549266bfb2ec960e (" + , " 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_20d66a22c8458ce9 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d14bbd087d659d39 (" + , " 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_cc4cc092bbbc9b62 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_058ef31090453eac (" + , " 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_f03cbb41e6ed4425 (" + , " 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_b51edca66b0d5015 (" + , " 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_e62214fe1a83016e (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_147ab6ac4bbaf498 (" + , " 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_2d03edf0074d9f1d (" + , " 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_72ffa8fb0a5759b8 (" + , " 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_c22fbfb9c0df6fd7 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f54d0109c7066520 (" + , " 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_325e2f520a4172ed (" + , " 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_89930d68beb55140 (" + , " 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_beae4bb50429253b (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2be2d16bb4c518d4 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d195698dd3acd675 (" + , " 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_98f459fec16be89c (" + , " 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_7349c9403f3abbd5 (" + , " 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_11f6ed0321e668b1 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_10d489f4a8862535 (" + , " 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_b9520bd9c600036f (" + , " 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_a72cd232b7183078 (" + , " 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_1491613d1ddf17cf (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cd465e6040a7dad6 (" + , " 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_87e370d621fa4ff5 (" + , " 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_5a829d115c6bc0fe (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ac507717935263e (" + , " 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_fad4695768e780d2 (" + , " 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_2d801ecd9df58c4c (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_74e20334236d19aa (" + , " 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_b78d369fecd4d319 (" + , " 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_6a4cdb3b87e5a4f1 (" + , " 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_8654669cb37ec58c (" + , " 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_2532ddfce3cd0bca (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a2acec2794fbde7f (" + , " 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_66aee01162e82d50 (" + , " 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_9b653bccca4ac24e (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a098386474a5cdb5 (" + , " 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_2e9c8c01f35e6acb (" + , " 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_286c73f79317a3e3 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_662bc18799805839 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1959a239579036fb (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2354a8b278c0cd71 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bea13f5299ed5a3d (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e6238c8d3247df90 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1965f393daa0d8f7 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_261fbb222ff51508 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_412146a50fb63c08 (" + , " 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_4c711399a27177d2 (" + , " 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_48f13d014cf5abc2 (" + , " 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_df58db373057b104 (" + , " 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_cd02943b67a31d7d (" + , " 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_d1795e2922559975 (" + , " 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_466ac518167166b2 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbb93d7a1f684f66 (" + , " 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_364d3acc9ad36595 (" + , " 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_35ccde78d5f8d608 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e9f910435fcf842b (" + , " 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_60161f29f75cdda2 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0fdc0400bf2cf88a (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2dca214c7341a390 (" + , " 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_c59e0448dece1e39 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_3e08e4cc1548edb1 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4dd1b569826989ab (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4d5e008f8619f378 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9ffed83ac6ea431c (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f484400f131b9c53 (" + , " 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_9acb7e7b55d43950 (" + , " 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_ada1499371abf824 (" + , " 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_2912c5f1189bdfc3 (" + , " 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_1b506c80f4164bd2 (" + , " 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_fd48932c0d1a5c98 (" + , " 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_e7f5f62edcbacd5e (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_164688fbe25ff234 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7bb9a5e7ad4158d0 (" + , " 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_835eb7fbc22f6be2 (" + , " 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_5a8641b7b5b7ebcb (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f0968021256b8c32 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b8731b5733264e64 (" + , " 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_d5d8ec1f9072f2b2 (" + , " 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_f7769f64190c5048 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_062db861a64288e9 (" + , " 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_d1af6ca847197969 (" + , " 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_da5982def8ba4f8a (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_0db021420c646595 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4b4702cad8ca69c6 (" + , " 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_2b2d42090bcbfc1d (" + , " 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_f7b1ab55b3482ddf (" + , " 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_60c424087a59c879 (" + , " 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_bd29a0dac09f1581 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f6513b31946b645e (" + , " 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_14f1bb31c899e919 (" + , " 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_99c3eaed027ba906 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_a24865bd12e484f7 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_21c8797620743f34 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b52d88cb6d142215 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11e1b81ed511c027 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_73bf100a8490ce66 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_656ffa4d1eb3cfc2 (" + , " 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_b54c35fef9b1ace4 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_01c29ce9c8746114 (" + , " 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_1f2d82082210fca8 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc2539146bdde271 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_28726c4ac447cb13" hs_bindgen_28726c4ac447cb13 :: + 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:174: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_28726c4ac447cb13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_dd22e5db79c8e8a5" hs_bindgen_dd22e5db79c8e8a5 :: + 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:183: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_dd22e5db79c8e8a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_997f94b3869a4ce5" hs_bindgen_997f94b3869a4ce5 :: + 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:190:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_997f94b3869a4ce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_c4f169fbe15d613a" hs_bindgen_c4f169fbe15d613a :: + 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:196: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_c4f169fbe15d613a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_f3e764504cc0eeb1" hs_bindgen_f3e764504cc0eeb1 :: + 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:201:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_f3e764504cc0eeb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_f5f27ecf8d86e8ec" hs_bindgen_f5f27ecf8d86e8ec :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:206:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_f5f27ecf8d86e8ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_a309ed3a832e4934" hs_bindgen_a309ed3a832e4934 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:211:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_a309ed3a832e4934 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_240f4db6a6600468" hs_bindgen_240f4db6a6600468 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:216:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_240f4db6a6600468 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_c036330e90802cc5" hs_bindgen_c036330e90802cc5 :: + 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:223:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: + IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_c036330e90802cc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_91e37daf03280527" hs_bindgen_91e37daf03280527 :: + 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:228: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_91e37daf03280527 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_f259efa9270c5bda" hs_bindgen_f259efa9270c5bda :: + 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:234: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_f259efa9270c5bda + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_7bd2c956519911a7" hs_bindgen_7bd2c956519911a7 :: + 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:240: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_7bd2c956519911a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_3f48e9dc9eceff21" hs_bindgen_3f48e9dc9eceff21 :: + 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:255: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_3f48e9dc9eceff21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_a01e51332a8b1513" hs_bindgen_a01e51332a8b1513 :: + 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:265: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_a01e51332a8b1513 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_bc32ebfea4fb03e5" hs_bindgen_bc32ebfea4fb03e5 :: + 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:277: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_bc32ebfea4fb03e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_eabde7b3ee2ffd64" hs_bindgen_eabde7b3ee2ffd64 :: + 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:282: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_eabde7b3ee2ffd64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_7c0bba4d217f72b1" hs_bindgen_7c0bba4d217f72b1 :: + 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:301: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_7c0bba4d217f72b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_1eb2295987a5a75f" hs_bindgen_1eb2295987a5a75f :: + 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:313: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_1eb2295987a5a75f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_9fb34facc619ab09" hs_bindgen_9fb34facc619ab09 :: + 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:328: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_9fb34facc619ab09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_4dce37cbf4800000" hs_bindgen_4dce37cbf4800000 :: + 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:337: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_4dce37cbf4800000 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_a721e9f09cae46f9" hs_bindgen_a721e9f09cae46f9 :: + 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:347: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_a721e9f09cae46f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_d46ef8cc7d2308c0" hs_bindgen_d46ef8cc7d2308c0 :: + 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:357: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_d46ef8cc7d2308c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_c87c4832ce493a48" hs_bindgen_c87c4832ce493a48 :: + 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:367: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_c87c4832ce493a48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_c3ffef75754681c4" hs_bindgen_c3ffef75754681c4 :: + 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:374: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_c3ffef75754681c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_d6fc404199986c4a" hs_bindgen_d6fc404199986c4a :: + 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:388: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_d6fc404199986c4a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_e420a64fe712af27" hs_bindgen_e420a64fe712af27 :: + 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:396: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_e420a64fe712af27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_a8d9dca7efce7cfb" hs_bindgen_a8d9dca7efce7cfb :: + 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:404: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_a8d9dca7efce7cfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_fe10cf5bc22e11de" hs_bindgen_fe10cf5bc22e11de :: + 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:412: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_fe10cf5bc22e11de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_c6ccbe6ee1fb62a3" hs_bindgen_c6ccbe6ee1fb62a3 :: + 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:421: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_c6ccbe6ee1fb62a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_f12eaecf49fa76ed" hs_bindgen_f12eaecf49fa76ed :: + 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:431: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_f12eaecf49fa76ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_b3c5202c69669b30" hs_bindgen_b3c5202c69669b30 :: + 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:439: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_b3c5202c69669b30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_6eb397e3ffdcd2d4" hs_bindgen_6eb397e3ffdcd2d4 :: + 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:446: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_6eb397e3ffdcd2d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_cc294f1e8c6a6e38" hs_bindgen_cc294f1e8c6a6e38 :: + 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:454: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_cc294f1e8c6a6e38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_414a45b52e0570d2" hs_bindgen_414a45b52e0570d2 :: + 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:469: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_414a45b52e0570d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_e7649727a98ac2e4" hs_bindgen_e7649727a98ac2e4 :: + 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:477: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_e7649727a98ac2e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_42a53a701d89db03" hs_bindgen_42a53a701d89db03 :: + 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:486: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_42a53a701d89db03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_ec24c9c2258e2e6c" hs_bindgen_ec24c9c2258e2e6c :: + 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:495: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_ec24c9c2258e2e6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_8df526e15a9b028d" hs_bindgen_8df526e15a9b028d :: + 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:504: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_8df526e15a9b028d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_23dae717bd17f8bf" hs_bindgen_23dae717bd17f8bf :: + 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:514: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_23dae717bd17f8bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_743f3adc61d3e551" hs_bindgen_743f3adc61d3e551 :: + 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:522: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_743f3adc61d3e551 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_fb9f0d20b7e30e9d" hs_bindgen_fb9f0d20b7e30e9d :: + 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:530: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_fb9f0d20b7e30e9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_67d59a0e7c9456f5" hs_bindgen_67d59a0e7c9456f5 :: + 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:540: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_67d59a0e7c9456f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_634cacb1eefa6cbe" hs_bindgen_634cacb1eefa6cbe :: + 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:550: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_634cacb1eefa6cbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_81d8d893de90b378" hs_bindgen_81d8d893de90b378 :: + 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:564: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_81d8d893de90b378 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_9f721f339f329bde" hs_bindgen_9f721f339f329bde :: + 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:569: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_9f721f339f329bde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_5c0de0f7fc192c33" hs_bindgen_5c0de0f7fc192c33 :: + 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:574: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_5c0de0f7fc192c33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_2324940a747957f8" hs_bindgen_2324940a747957f8 :: + 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:579: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_2324940a747957f8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_08458bf4513668e8" hs_bindgen_08458bf4513668e8 :: + 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:584: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_08458bf4513668e8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_ea078a76afa9d9a3" hs_bindgen_ea078a76afa9d9a3 :: + 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:589: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_ea078a76afa9d9a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_09e74448cd09478e" hs_bindgen_09e74448cd09478e :: + 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:596: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_09e74448cd09478e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_d40b88e54c2eccb2" hs_bindgen_d40b88e54c2eccb2 :: + 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:601: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_d40b88e54c2eccb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_94613abec4a0f20e" hs_bindgen_94613abec4a0f20e :: + 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:607: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_94613abec4a0f20e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_0a1b2158ed3c7c95" hs_bindgen_0a1b2158ed3c7c95 :: + 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:613: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_0a1b2158ed3c7c95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_2a3a4d5eb60a58b8" hs_bindgen_2a3a4d5eb60a58b8 :: + 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:619:5@ + +__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_2a3a4d5eb60a58b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_60ac29bc41ed5078" hs_bindgen_60ac29bc41ed5078 :: + 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:625:5@ + +__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_60ac29bc41ed5078 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_eb8af20b208a3171" hs_bindgen_eb8af20b208a3171 :: + 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:630: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_eb8af20b208a3171 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_939fb0f0d48c39e9" hs_bindgen_939fb0f0d48c39e9 :: + 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:640:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_939fb0f0d48c39e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_313d985aab96d4cd" hs_bindgen_313d985aab96d4cd :: + 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:645: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_313d985aab96d4cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_787c9ea5f692dfdd" hs_bindgen_787c9ea5f692dfdd :: + 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:650: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_787c9ea5f692dfdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_d09a3fa73812f9e0" hs_bindgen_d09a3fa73812f9e0 :: + 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_d09a3fa73812f9e0 + +{-| + + 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:677: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_d09a3fa73812f9e0 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_804af5a1514a4855" hs_bindgen_804af5a1514a4855 :: + 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:689:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_804af5a1514a4855 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_8ee9eb150e25fc14" hs_bindgen_8ee9eb150e25fc14 :: + 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:695:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_8ee9eb150e25fc14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_a5163f95963dfa56" hs_bindgen_a5163f95963dfa56 :: + 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_a5163f95963dfa56 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:714: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_a5163f95963dfa56 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_187a36177885ae61" hs_bindgen_187a36177885ae61 :: + 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_187a36177885ae61 + +{-| 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:747: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_187a36177885ae61 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_0af47032eb9b8e81" hs_bindgen_0af47032eb9b8e81 :: + 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_0af47032eb9b8e81 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:771: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_0af47032eb9b8e81 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_3ae3643df004579d" hs_bindgen_3ae3643df004579d :: + 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_3ae3643df004579d + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:798: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_3ae3643df004579d x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_50e40a6916296b27" hs_bindgen_50e40a6916296b27 :: + 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_50e40a6916296b27 + +{-| 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:817: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_50e40a6916296b27 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_2c56b29aaf9cfee8" hs_bindgen_2c56b29aaf9cfee8 :: + 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_2c56b29aaf9cfee8 + +{-| 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:840: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_2c56b29aaf9cfee8 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_8_1_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_858d872af1280b36" hs_bindgen_858d872af1280b36 :: + 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:858: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_858d872af1280b36 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_5cfefab7265f102f" hs_bindgen_5cfefab7265f102f :: + 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:864: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_5cfefab7265f102f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_11749a09f4d53141" hs_bindgen_11749a09f4d53141 :: + 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:870: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_11749a09f4d53141 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_658cdedb852f90fb" hs_bindgen_658cdedb852f90fb :: + 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_658cdedb852f90fb + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:875: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_658cdedb852f90fb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_95bd6baf4c8b1c06" hs_bindgen_95bd6baf4c8b1c06 :: + 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:881: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_95bd6baf4c8b1c06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_b7411ab44e07202e" hs_bindgen_b7411ab44e07202e :: + 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_b7411ab44e07202e + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:887: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_b7411ab44e07202e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_36523c3faa4195bd" hs_bindgen_36523c3faa4195bd :: + 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_36523c3faa4195bd + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:893: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_36523c3faa4195bd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_bb595f35621efd0f" hs_bindgen_bb595f35621efd0f :: + 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:901: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_bb595f35621efd0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_2276250268f3b62a" hs_bindgen_2276250268f3b62a :: + 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:911: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_2276250268f3b62a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_ff509fc47116dbd2" hs_bindgen_ff509fc47116dbd2 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:924: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_ff509fc47116dbd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_8f361ac1316fd663" hs_bindgen_8f361ac1316fd663 :: + 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:930:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_8f361ac1316fd663 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_185d52bc77bcca89" hs_bindgen_185d52bc77bcca89 :: + 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:935: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_185d52bc77bcca89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_576e7b9b939cfd9e" hs_bindgen_576e7b9b939cfd9e :: + 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:940:28@ + +__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_576e7b9b939cfd9e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_400cce0014e45bad" hs_bindgen_400cce0014e45bad :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:945:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_400cce0014e45bad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_bf37c3a7e723c882" hs_bindgen_bf37c3a7e723c882 :: + 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:950: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_bf37c3a7e723c882 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_533856d16d16ca6d" hs_bindgen_533856d16d16ca6d :: + 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:955: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_533856d16d16ca6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_f01c989f17f0326f" hs_bindgen_f01c989f17f0326f :: + 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:960: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_f01c989f17f0326f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_83c1a1dd65257096" hs_bindgen_83c1a1dd65257096 :: + 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:966: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_83c1a1dd65257096 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_1a907620b2bfe1a6" hs_bindgen_1a907620b2bfe1a6 :: + 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:971: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_1a907620b2bfe1a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_e55ea75c397e1571" hs_bindgen_e55ea75c397e1571 :: + 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:976: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_e55ea75c397e1571 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_ec7325bbb3e1f7aa" hs_bindgen_ec7325bbb3e1f7aa :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:981: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_ec7325bbb3e1f7aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_c3e22c714c2e0fbe" hs_bindgen_c3e22c714c2e0fbe :: + 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_c3e22c714c2e0fbe + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:986: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_c3e22c714c2e0fbe x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_c358b3978a8e0429" hs_bindgen_c358b3978a8e0429 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:991: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_c358b3978a8e0429 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_d0000ef91d9930e0" hs_bindgen_d0000ef91d9930e0 :: + 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:998: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_d0000ef91d9930e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_dc82d91c9ed96ced" hs_bindgen_dc82d91c9ed96ced :: + 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:1003: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_dc82d91c9ed96ced + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_4435738f1c485de7" hs_bindgen_4435738f1c485de7 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1005: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_4435738f1c485de7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_77367aa88a21c15c" hs_bindgen_77367aa88a21c15c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1007: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_77367aa88a21c15c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_61946e541d1f6ac2" hs_bindgen_61946e541d1f6ac2 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1009: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_61946e541d1f6ac2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_07804bd73f1749a5" hs_bindgen_07804bd73f1749a5 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1010: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_07804bd73f1749a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_6335ac293fe8ec38" hs_bindgen_6335ac293fe8ec38 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1012: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_6335ac293fe8ec38 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_b27faf5333f1f069" hs_bindgen_b27faf5333f1f069 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1013: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_b27faf5333f1f069 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_01e6cdd09aa7a5fc" hs_bindgen_01e6cdd09aa7a5fc :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1015: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_01e6cdd09aa7a5fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_a6880a5aa332a4d3" hs_bindgen_a6880a5aa332a4d3 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1016: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_a6880a5aa332a4d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_423ec10b1c394630" hs_bindgen_423ec10b1c394630 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1017: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_423ec10b1c394630 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_1e1347e1f2666ca4" hs_bindgen_1e1347e1f2666ca4 :: + 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:1020: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_1e1347e1f2666ca4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_9a7eca858d4f15ae" hs_bindgen_9a7eca858d4f15ae :: + 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:1023: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_9a7eca858d4f15ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_4770bf8c95ea5346" hs_bindgen_4770bf8c95ea5346 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1030: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_4770bf8c95ea5346 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_d2d8ea851105790f" hs_bindgen_d2d8ea851105790f :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1037: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_d2d8ea851105790f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_12e4f6b601547f6b" hs_bindgen_12e4f6b601547f6b :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1042: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_12e4f6b601547f6b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_5a7d4d2e780195bd" hs_bindgen_5a7d4d2e780195bd :: + 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:1046: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_5a7d4d2e780195bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_c3b6df33c65ec365" hs_bindgen_c3b6df33c65ec365 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1048: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_c3b6df33c65ec365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_1a49b5cd381256f4" hs_bindgen_1a49b5cd381256f4 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1049: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_1a49b5cd381256f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_e23344507ba93afc" hs_bindgen_e23344507ba93afc :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1051: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_e23344507ba93afc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_c86382992d13356a" hs_bindgen_c86382992d13356a :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1053: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_c86382992d13356a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_7da884d00808aef2" hs_bindgen_7da884d00808aef2 :: + 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:1056: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_7da884d00808aef2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_5ef84434eeb78719" hs_bindgen_5ef84434eeb78719 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1058: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_5ef84434eeb78719 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_4bcce5165f3d9c7a" hs_bindgen_4bcce5165f3d9c7a :: + 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:1065: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_4bcce5165f3d9c7a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_2145797c54a8e626" hs_bindgen_2145797c54a8e626 :: + 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:1072: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_2145797c54a8e626 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_49675f485ee68754" hs_bindgen_49675f485ee68754 :: + 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:1077: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_49675f485ee68754 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_0d35f23cb8b805f1" hs_bindgen_0d35f23cb8b805f1 :: + 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:1082: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_0d35f23cb8b805f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_857fec7bbfd07718" hs_bindgen_857fec7bbfd07718 :: + 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:1100: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_857fec7bbfd07718 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_cb7f41a68ef5b12a" hs_bindgen_cb7f41a68ef5b12a :: + 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:1111: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_cb7f41a68ef5b12a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_2b6274f5ac0de882" hs_bindgen_2b6274f5ac0de882 :: + 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:1122:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_2b6274f5ac0de882 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_fd844c5d48c24599" hs_bindgen_fd844c5d48c24599 :: + 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)/__]: hanlder 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:1130:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: hanlder 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_fd844c5d48c24599 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_5f2f6d0337b4a053" hs_bindgen_5f2f6d0337b4a053 :: + 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:1136: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_5f2f6d0337b4a053 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_d2bc9a6ca5a8083f" hs_bindgen_d2bc9a6ca5a8083f :: + 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:1141: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_d2bc9a6ca5a8083f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_f56b20bc43eb0b25" hs_bindgen_f56b20bc43eb0b25 :: + 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:1146: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_f56b20bc43eb0b25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_1ef12f9ca48cfe0f" hs_bindgen_1ef12f9ca48cfe0f :: + 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:1153: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_1ef12f9ca48cfe0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_63c769c68fef3a0c" hs_bindgen_63c769c68fef3a0c :: + 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:1160: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_63c769c68fef3a0c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_8926b3b951c20e89" hs_bindgen_8926b3b951c20e89 :: + 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:1171: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_8926b3b951c20e89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_1621a3c8802c39bf" hs_bindgen_1621a3c8802c39bf :: + 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:1178: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_1621a3c8802c39bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_b4c68f834f538bb3" hs_bindgen_b4c68f834f538bb3 :: + 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:1185: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_b4c68f834f538bb3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_8614b45f567f1744" hs_bindgen_8614b45f567f1744 :: + 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:1201: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_8614b45f567f1744 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_555e5dd91553e0b3" hs_bindgen_555e5dd91553e0b3 :: + 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:1217: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_555e5dd91553e0b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_d4d28b02e9830455" hs_bindgen_d4d28b02e9830455 :: + 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:1225: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_d4d28b02e9830455 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_d7ccb24edd77b62d" hs_bindgen_d7ccb24edd77b62d :: + 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:1233: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_d7ccb24edd77b62d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_62e86b550abd01f0" hs_bindgen_62e86b550abd01f0 :: + 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:1241: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_62e86b550abd01f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_21367b79ea2f6245" hs_bindgen_21367b79ea2f6245 :: + 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:1247: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_21367b79ea2f6245 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_1d83ff59946f0f3a" hs_bindgen_1d83ff59946f0f3a :: + 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:1253: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_1d83ff59946f0f3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_1bdca5400c27db0f" hs_bindgen_1bdca5400c27db0f :: + 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:1258: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_1bdca5400c27db0f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_f02c1595f985be21" hs_bindgen_f02c1595f985be21 :: + 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:1263: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_f02c1595f985be21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_beca1f3ac7313b7d" hs_bindgen_beca1f3ac7313b7d :: + 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:1268: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_beca1f3ac7313b7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_0676a38feb1bb368" hs_bindgen_0676a38feb1bb368 :: + 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:1273: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_0676a38feb1bb368 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_bc49e4dda80c3bf1" hs_bindgen_bc49e4dda80c3bf1 :: + 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:1278: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_bc49e4dda80c3bf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_8e2072dcaa904a19" hs_bindgen_8e2072dcaa904a19 :: + 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:1283: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_8e2072dcaa904a19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_d38dd659da04759c" hs_bindgen_d38dd659da04759c :: + 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:1288: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_d38dd659da04759c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_050d1bce649c9211" hs_bindgen_050d1bce649c9211 :: + 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:1295: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_050d1bce649c9211 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_d5c8ba1797ac7003" hs_bindgen_d5c8ba1797ac7003 :: + 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:1311: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_d5c8ba1797ac7003 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_48e4da43882efe8f" hs_bindgen_48e4da43882efe8f :: + 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:1321: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_48e4da43882efe8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_815d60c0e8dfe1c4" hs_bindgen_815d60c0e8dfe1c4 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1325: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_815d60c0e8dfe1c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_874cf99fe3b39005" hs_bindgen_874cf99fe3b39005 :: + 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:1328: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_874cf99fe3b39005 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_025ebc700deff872" hs_bindgen_025ebc700deff872 :: + 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:1330: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_025ebc700deff872 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_3bd340d4f0851602" hs_bindgen_3bd340d4f0851602 :: + 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:1332: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_3bd340d4f0851602 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_82370be0c7943656" hs_bindgen_82370be0c7943656 :: + 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:1334: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_82370be0c7943656 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_377f3d86295dd0e7" hs_bindgen_377f3d86295dd0e7 :: + 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:1336: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_377f3d86295dd0e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_0c3a0e2cdb19246f" hs_bindgen_0c3a0e2cdb19246f :: + 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:1356: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_0c3a0e2cdb19246f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_c0abdc9f45fbe604" hs_bindgen_c0abdc9f45fbe604 :: + 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:1378: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_c0abdc9f45fbe604 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_b61d7fe4c9a5ecd8" hs_bindgen_b61d7fe4c9a5ecd8 :: + 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_b61d7fe4c9a5ecd8 + +{-| 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:1386: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_b61d7fe4c9a5ecd8 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_ad8a33aa8085bedd" hs_bindgen_ad8a33aa8085bedd :: + 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:1391:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_ad8a33aa8085bedd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_98394c27af326d1a" hs_bindgen_98394c27af326d1a :: + 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:1405: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_98394c27af326d1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_c31038255d7977ad" hs_bindgen_c31038255d7977ad :: + 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:1410: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_c31038255d7977ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_fb14671f9b0bca1a" hs_bindgen_fb14671f9b0bca1a :: + 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:1415: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_fb14671f9b0bca1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_df38285b80ea15c5" hs_bindgen_df38285b80ea15c5 :: + 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:1420: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_df38285b80ea15c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_b55738bbfb03b462" hs_bindgen_b55738bbfb03b462 :: + 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:1422: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_b55738bbfb03b462 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_adef25cd636ad3c3" hs_bindgen_adef25cd636ad3c3 :: + 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:1429: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_adef25cd636ad3c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_7c53dbebfaa841d8" hs_bindgen_7c53dbebfaa841d8 :: + 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:1445: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_7c53dbebfaa841d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_510b0bbc9071b70a" hs_bindgen_510b0bbc9071b70a :: + 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:1461: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_510b0bbc9071b70a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_84c9ee3656e86ae4" hs_bindgen_84c9ee3656e86ae4 :: + 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:1478: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_84c9ee3656e86ae4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_26e210469e455471" hs_bindgen_26e210469e455471 :: + 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:1493: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_26e210469e455471 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_179911899fa9f1a5" hs_bindgen_179911899fa9f1a5 :: + 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:1509: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_179911899fa9f1a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_6a326aa2f58ce185" hs_bindgen_6a326aa2f58ce185 :: + 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:1524: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_6a326aa2f58ce185 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_6bfde232ca5df5f9" hs_bindgen_6bfde232ca5df5f9 :: + 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_6bfde232ca5df5f9 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1535: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_6bfde232ca5df5f9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_e5277c79d81708cb" hs_bindgen_e5277c79d81708cb :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1537: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_e5277c79d81708cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_a8003e43047d604e" hs_bindgen_a8003e43047d604e :: + 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:1540: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_a8003e43047d604e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_e5076a2af1eec8a8" hs_bindgen_e5076a2af1eec8a8 :: + 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:1545: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_e5076a2af1eec8a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_d84df4e20855e7d5" hs_bindgen_d84df4e20855e7d5 :: + 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:1550: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_d84df4e20855e7d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_e6354945f0606fba" hs_bindgen_e6354945f0606fba :: + 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:1555: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_e6354945f0606fba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_215bdf619476c3e9" hs_bindgen_215bdf619476c3e9 :: + 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:1557: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_215bdf619476c3e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_aa93d5db4ecb35dc" hs_bindgen_aa93d5db4ecb35dc :: + 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:1562: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_aa93d5db4ecb35dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_171f3186146c68e6" hs_bindgen_171f3186146c68e6 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1564: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_171f3186146c68e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_946045b93827dcc6" hs_bindgen_946045b93827dcc6 :: + 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:1567: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_946045b93827dcc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_3469683aab884d3b" hs_bindgen_3469683aab884d3b :: + 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:1572:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_3469683aab884d3b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_327b9e86bfc4f4fd" hs_bindgen_327b9e86bfc4f4fd :: + 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:1577: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_327b9e86bfc4f4fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_e9c3acb8ba17977c" hs_bindgen_e9c3acb8ba17977c :: + 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:1579: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_e9c3acb8ba17977c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_5f84c3c737cb6c73" hs_bindgen_5f84c3c737cb6c73 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1585: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_5f84c3c737cb6c73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_5c39d3141e77a87b" hs_bindgen_5c39d3141e77a87b :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1588: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_5c39d3141e77a87b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_8adadb362ec8e24e" hs_bindgen_8adadb362ec8e24e :: + 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:1595: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_8adadb362ec8e24e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_6b27700b1ca284ad" hs_bindgen_6b27700b1ca284ad :: + 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:1602: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_6b27700b1ca284ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_185153034fc04fe2" hs_bindgen_185153034fc04fe2 :: + 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:1607: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_185153034fc04fe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_fb2c5bef2961c8d0" hs_bindgen_fb2c5bef2961c8d0 :: + 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_fb2c5bef2961c8d0 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1609: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_fb2c5bef2961c8d0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_e35b3669f15978d3" hs_bindgen_e35b3669f15978d3 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1612: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_e35b3669f15978d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_f484febd4eb96b35" hs_bindgen_f484febd4eb96b35 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1614: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_f484febd4eb96b35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_182d0b10f4003529" hs_bindgen_182d0b10f4003529 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1616: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_182d0b10f4003529 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_2ea6aece3cf464d6" hs_bindgen_2ea6aece3cf464d6 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1618: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_2ea6aece3cf464d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_16bde2a1203aee15" hs_bindgen_16bde2a1203aee15 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1620: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_16bde2a1203aee15 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_fb6104d693ea0361" hs_bindgen_fb6104d693ea0361 :: + 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:1623: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_fb6104d693ea0361 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_616af300012b318f" hs_bindgen_616af300012b318f :: + 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:1625: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_616af300012b318f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_2c193df14293a43c" hs_bindgen_2c193df14293a43c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1628: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_2c193df14293a43c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_6a2ace41a3e57cc0" hs_bindgen_6a2ace41a3e57cc0 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1630: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_6a2ace41a3e57cc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_50c67da689f50438" hs_bindgen_50c67da689f50438 :: + 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:1636: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_50c67da689f50438 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_202c4d5be9f41366" hs_bindgen_202c4d5be9f41366 :: + 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:1639: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_202c4d5be9f41366 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_72f4fce0fceeb975" hs_bindgen_72f4fce0fceeb975 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1642: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_72f4fce0fceeb975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_591580c3bf060f9c" hs_bindgen_591580c3bf060f9c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1645: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_591580c3bf060f9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_2b486488d3db3df3" hs_bindgen_2b486488d3db3df3 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1647: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_2b486488d3db3df3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_2773922182f7eb11" hs_bindgen_2773922182f7eb11 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1649: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_2773922182f7eb11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_155246b453f8dfdd" hs_bindgen_155246b453f8dfdd :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1651: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_155246b453f8dfdd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_5016c727b36d6030" hs_bindgen_5016c727b36d6030 :: + 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:1666: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_5016c727b36d6030 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_a866ae875c864adc" hs_bindgen_a866ae875c864adc :: + 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:1680: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_a866ae875c864adc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_877da6269c6abd52" hs_bindgen_877da6269c6abd52 :: + 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:1698: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_877da6269c6abd52 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_d7e1bae1941679bc" hs_bindgen_d7e1bae1941679bc :: + 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:1713: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_d7e1bae1941679bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_3a0c04c25ffe0d49" hs_bindgen_3a0c04c25ffe0d49 :: + 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_3a0c04c25ffe0d49 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1719: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_3a0c04c25ffe0d49 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_468d811af2f97daa" hs_bindgen_468d811af2f97daa :: + 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_468d811af2f97daa + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1721: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_468d811af2f97daa x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_e0518844b1226a13" hs_bindgen_e0518844b1226a13 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1724: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_e0518844b1226a13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_8cb5db42ed8f0173" hs_bindgen_8cb5db42ed8f0173 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1727: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_8cb5db42ed8f0173 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_11434e047a9024b0" hs_bindgen_11434e047a9024b0 :: + 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_11434e047a9024b0 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1733: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_11434e047a9024b0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_b5b90e968b5fa68f" hs_bindgen_b5b90e968b5fa68f :: + 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_b5b90e968b5fa68f + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1735: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_b5b90e968b5fa68f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_29ccf3f402344b06" hs_bindgen_29ccf3f402344b06 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1738: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_29ccf3f402344b06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_774d264bd34f9745" hs_bindgen_774d264bd34f9745 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1741: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_774d264bd34f9745 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_417ca36529c21470" hs_bindgen_417ca36529c21470 :: + 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_417ca36529c21470 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1747: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_417ca36529c21470 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_60a9f5eb0c3f3a44" hs_bindgen_60a9f5eb0c3f3a44 :: + 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_60a9f5eb0c3f3a44 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1749: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_60a9f5eb0c3f3a44 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_224e3c4a41780d1f" hs_bindgen_224e3c4a41780d1f :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1752: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_224e3c4a41780d1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_22040a494d0ae4a2" hs_bindgen_22040a494d0ae4a2 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1755: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_22040a494d0ae4a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_f5bc59155213f584" hs_bindgen_f5bc59155213f584 :: + 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_f5bc59155213f584 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1761: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_f5bc59155213f584 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_a46f239d2f82e9cc" hs_bindgen_a46f239d2f82e9cc :: + 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_a46f239d2f82e9cc + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1763: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_a46f239d2f82e9cc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_305a0ddf0c5d5db5" hs_bindgen_305a0ddf0c5d5db5 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1766: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_305a0ddf0c5d5db5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_812f4fa0e40f8aa9" hs_bindgen_812f4fa0e40f8aa9 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1769: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_812f4fa0e40f8aa9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_6ce9d07e36191c3d" hs_bindgen_6ce9d07e36191c3d :: + 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_6ce9d07e36191c3d + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1776: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_6ce9d07e36191c3d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_cee73367142f4ee2" hs_bindgen_cee73367142f4ee2 :: + 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_cee73367142f4ee2 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1779: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_cee73367142f4ee2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_cbc4b6084cba671d" hs_bindgen_cbc4b6084cba671d :: + 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_cbc4b6084cba671d + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1790: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_cbc4b6084cba671d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_c2afe52352cd3854" hs_bindgen_c2afe52352cd3854 :: + 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_c2afe52352cd3854 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1793: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_c2afe52352cd3854 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_692ea29191319584" hs_bindgen_692ea29191319584 :: + 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:1797: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_692ea29191319584 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_c6cea4ad87b5d908" hs_bindgen_c6cea4ad87b5d908 :: + 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:1801: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_c6cea4ad87b5d908 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_dc04e2b597e96e33" hs_bindgen_dc04e2b597e96e33 :: + 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_dc04e2b597e96e33 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1808: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_dc04e2b597e96e33 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_072a8d1188bb4cb7" hs_bindgen_072a8d1188bb4cb7 :: + 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_072a8d1188bb4cb7 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1811: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_072a8d1188bb4cb7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_c8421ded6de22fca" hs_bindgen_c8421ded6de22fca :: + 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_c8421ded6de22fca + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1818: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_c8421ded6de22fca x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_e2355f20d4fe4362" hs_bindgen_e2355f20d4fe4362 :: + 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_e2355f20d4fe4362 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1824: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_e2355f20d4fe4362 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_5bc79e00561bfab8" hs_bindgen_5bc79e00561bfab8 :: + 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_5bc79e00561bfab8 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1834: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_5bc79e00561bfab8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_50ff56a754037b0e" hs_bindgen_50ff56a754037b0e :: + 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_50ff56a754037b0e + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1837: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_50ff56a754037b0e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_b5c5b745c66f2f81" hs_bindgen_b5c5b745c66f2f81 :: + 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_b5c5b745c66f2f81 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1844: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_b5c5b745c66f2f81 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_e1825ff4a309fb35" hs_bindgen_e1825ff4a309fb35 :: + 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_e1825ff4a309fb35 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1847: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_e1825ff4a309fb35 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_7619a0e64fb39cb9" hs_bindgen_7619a0e64fb39cb9 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1853: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_7619a0e64fb39cb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_18467afc7ae89375" hs_bindgen_18467afc7ae89375 :: + 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:1856: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_18467afc7ae89375 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_d6f3ac103a18e5e6" hs_bindgen_d6f3ac103a18e5e6 :: + 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:1859: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_d6f3ac103a18e5e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_8271dad6f49a6f64" hs_bindgen_8271dad6f49a6f64 :: + 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:1862: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_8271dad6f49a6f64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_761898c8f5b54c13" hs_bindgen_761898c8f5b54c13 :: + 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:1865: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_761898c8f5b54c13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_549266bfb2ec960e" hs_bindgen_549266bfb2ec960e :: + 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:1868: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_549266bfb2ec960e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_20d66a22c8458ce9" hs_bindgen_20d66a22c8458ce9 :: + 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:1871: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_20d66a22c8458ce9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_d14bbd087d659d39" hs_bindgen_d14bbd087d659d39 :: + 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:1875: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_d14bbd087d659d39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_cc4cc092bbbc9b62" hs_bindgen_cc4cc092bbbc9b62 :: + 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:1879: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_cc4cc092bbbc9b62 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_058ef31090453eac" hs_bindgen_058ef31090453eac :: + 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:1882: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_058ef31090453eac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_f03cbb41e6ed4425" hs_bindgen_f03cbb41e6ed4425 :: + 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:1889: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_f03cbb41e6ed4425 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_b51edca66b0d5015" hs_bindgen_b51edca66b0d5015 :: + 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:1897: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_b51edca66b0d5015 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_e62214fe1a83016e" hs_bindgen_e62214fe1a83016e :: + 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:1902: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_e62214fe1a83016e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_147ab6ac4bbaf498" hs_bindgen_147ab6ac4bbaf498 :: + 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:1905: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_147ab6ac4bbaf498 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_2d03edf0074d9f1d" hs_bindgen_2d03edf0074d9f1d :: + 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_2d03edf0074d9f1d + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1908: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_2d03edf0074d9f1d x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_72ffa8fb0a5759b8" hs_bindgen_72ffa8fb0a5759b8 :: + 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:1921: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_72ffa8fb0a5759b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_c22fbfb9c0df6fd7" hs_bindgen_c22fbfb9c0df6fd7 :: + 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:1926: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_c22fbfb9c0df6fd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_f54d0109c7066520" hs_bindgen_f54d0109c7066520 :: + 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:1929: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_f54d0109c7066520 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_325e2f520a4172ed" hs_bindgen_325e2f520a4172ed :: + 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_325e2f520a4172ed + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1932: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_325e2f520a4172ed x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_89930d68beb55140" hs_bindgen_89930d68beb55140 :: + 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:1944: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_89930d68beb55140 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_beae4bb50429253b" hs_bindgen_beae4bb50429253b :: + 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:1949: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_beae4bb50429253b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_2be2d16bb4c518d4" hs_bindgen_2be2d16bb4c518d4 :: + 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:1951: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_2be2d16bb4c518d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_d195698dd3acd675" hs_bindgen_d195698dd3acd675 :: + 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_d195698dd3acd675 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1953: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_d195698dd3acd675 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_98f459fec16be89c" hs_bindgen_98f459fec16be89c :: + 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:1956: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_98f459fec16be89c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_7349c9403f3abbd5" hs_bindgen_7349c9403f3abbd5 :: + 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:1964: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_7349c9403f3abbd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_11f6ed0321e668b1" hs_bindgen_11f6ed0321e668b1 :: + 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:1972: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_11f6ed0321e668b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_10d489f4a8862535" hs_bindgen_10d489f4a8862535 :: + 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_10d489f4a8862535 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1974: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_10d489f4a8862535 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_b9520bd9c600036f" hs_bindgen_b9520bd9c600036f :: + 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_b9520bd9c600036f + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1975: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_b9520bd9c600036f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_a72cd232b7183078" hs_bindgen_a72cd232b7183078 :: + 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:1983: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_a72cd232b7183078 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_1491613d1ddf17cf" hs_bindgen_1491613d1ddf17cf :: + 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:1988: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_1491613d1ddf17cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_cd465e6040a7dad6" hs_bindgen_cd465e6040a7dad6 :: + 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:1990: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_cd465e6040a7dad6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_87e370d621fa4ff5" hs_bindgen_87e370d621fa4ff5 :: + 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:1993: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_87e370d621fa4ff5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_5a829d115c6bc0fe" hs_bindgen_5a829d115c6bc0fe :: + 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:1995: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_5a829d115c6bc0fe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_8ac507717935263e" hs_bindgen_8ac507717935263e :: + 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_8ac507717935263e + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1998: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_8ac507717935263e x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_fad4695768e780d2" hs_bindgen_fad4695768e780d2 :: + 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:2012: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_fad4695768e780d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_2d801ecd9df58c4c" hs_bindgen_2d801ecd9df58c4c :: + 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:2017: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_2d801ecd9df58c4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_74e20334236d19aa" hs_bindgen_74e20334236d19aa :: + 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:2020: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_74e20334236d19aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_b78d369fecd4d319" hs_bindgen_b78d369fecd4d319 :: + 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:2025: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_b78d369fecd4d319 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_6a4cdb3b87e5a4f1" hs_bindgen_6a4cdb3b87e5a4f1 :: + 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_6a4cdb3b87e5a4f1 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2029: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_6a4cdb3b87e5a4f1 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_8654669cb37ec58c" hs_bindgen_8654669cb37ec58c :: + 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:2042: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_8654669cb37ec58c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_2532ddfce3cd0bca" hs_bindgen_2532ddfce3cd0bca :: + 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:2047: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_2532ddfce3cd0bca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_a2acec2794fbde7f" hs_bindgen_a2acec2794fbde7f :: + 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:2050: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_a2acec2794fbde7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_66aee01162e82d50" hs_bindgen_66aee01162e82d50 :: + 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_66aee01162e82d50 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2055: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_66aee01162e82d50 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_9b653bccca4ac24e" hs_bindgen_9b653bccca4ac24e :: + 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:2068: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_9b653bccca4ac24e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_a098386474a5cdb5" hs_bindgen_a098386474a5cdb5 :: + 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_a098386474a5cdb5 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2075: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_a098386474a5cdb5 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_2e9c8c01f35e6acb" hs_bindgen_2e9c8c01f35e6acb :: + 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_2e9c8c01f35e6acb + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2090: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_2e9c8c01f35e6acb x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_286c73f79317a3e3" hs_bindgen_286c73f79317a3e3 :: + 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_286c73f79317a3e3 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2105: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_286c73f79317a3e3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_662bc18799805839" hs_bindgen_662bc18799805839 :: + 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:2106: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_662bc18799805839 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_1959a239579036fb" hs_bindgen_1959a239579036fb :: + 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:2111: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_1959a239579036fb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_2354a8b278c0cd71" hs_bindgen_2354a8b278c0cd71 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2113: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_2354a8b278c0cd71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_bea13f5299ed5a3d" hs_bindgen_bea13f5299ed5a3d :: + 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:2116: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_bea13f5299ed5a3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_e6238c8d3247df90" hs_bindgen_e6238c8d3247df90 :: + 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:2117: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_e6238c8d3247df90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_1965f393daa0d8f7" hs_bindgen_1965f393daa0d8f7 :: + 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:2119: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_1965f393daa0d8f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_261fbb222ff51508" hs_bindgen_261fbb222ff51508 :: + 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:2120: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_261fbb222ff51508 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_412146a50fb63c08" hs_bindgen_412146a50fb63c08 :: + 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:2123: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_412146a50fb63c08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_4c711399a27177d2" hs_bindgen_4c711399a27177d2 :: + 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:2125: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_4c711399a27177d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_48f13d014cf5abc2" hs_bindgen_48f13d014cf5abc2 :: + 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:2126: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_48f13d014cf5abc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_df58db373057b104" hs_bindgen_df58db373057b104 :: + 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:2127: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_df58db373057b104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_cd02943b67a31d7d" hs_bindgen_cd02943b67a31d7d :: + 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:2129: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_cd02943b67a31d7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_d1795e2922559975" hs_bindgen_d1795e2922559975 :: + 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:2132: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_d1795e2922559975 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_466ac518167166b2" hs_bindgen_466ac518167166b2 :: + 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:2134: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_466ac518167166b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_fbb93d7a1f684f66" hs_bindgen_fbb93d7a1f684f66 :: + 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:2137: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_fbb93d7a1f684f66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_364d3acc9ad36595" hs_bindgen_364d3acc9ad36595 :: + 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:2141: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_364d3acc9ad36595 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_35ccde78d5f8d608" hs_bindgen_35ccde78d5f8d608 :: + 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:2144: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_35ccde78d5f8d608 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_e9f910435fcf842b" hs_bindgen_e9f910435fcf842b :: + 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:2147: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_e9f910435fcf842b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_60161f29f75cdda2" hs_bindgen_60161f29f75cdda2 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2163: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_60161f29f75cdda2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_0fdc0400bf2cf88a" hs_bindgen_0fdc0400bf2cf88a :: + 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:2169: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_0fdc0400bf2cf88a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_2dca214c7341a390" hs_bindgen_2dca214c7341a390 :: + 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:2180: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_2dca214c7341a390 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_c59e0448dece1e39" hs_bindgen_c59e0448dece1e39 :: + 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:2195: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_c59e0448dece1e39 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_3e08e4cc1548edb1" hs_bindgen_3e08e4cc1548edb1 :: + 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:2203: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_3e08e4cc1548edb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_4dd1b569826989ab" hs_bindgen_4dd1b569826989ab :: + 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_4dd1b569826989ab + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2205: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_4dd1b569826989ab x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_4d5e008f8619f378" hs_bindgen_4d5e008f8619f378 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2207: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_4d5e008f8619f378 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_9ffed83ac6ea431c" hs_bindgen_9ffed83ac6ea431c :: + 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:2213: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_9ffed83ac6ea431c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_f484400f131b9c53" hs_bindgen_f484400f131b9c53 :: + 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:2220: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_f484400f131b9c53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_9acb7e7b55d43950" hs_bindgen_9acb7e7b55d43950 :: + 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_9acb7e7b55d43950 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2238: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_9acb7e7b55d43950 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_ada1499371abf824" hs_bindgen_ada1499371abf824 :: + 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_ada1499371abf824 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2247: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_ada1499371abf824 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_2912c5f1189bdfc3" hs_bindgen_2912c5f1189bdfc3 :: + 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_2912c5f1189bdfc3 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2255: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_2912c5f1189bdfc3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_1b506c80f4164bd2" hs_bindgen_1b506c80f4164bd2 :: + 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_1b506c80f4164bd2 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2265: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_1b506c80f4164bd2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_fd48932c0d1a5c98" hs_bindgen_fd48932c0d1a5c98 :: + 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_fd48932c0d1a5c98 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2284: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_fd48932c0d1a5c98 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_e7f5f62edcbacd5e" hs_bindgen_e7f5f62edcbacd5e :: + 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:2291:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_e7f5f62edcbacd5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_164688fbe25ff234" hs_bindgen_164688fbe25ff234 :: + 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:2297: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_164688fbe25ff234 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_7bb9a5e7ad4158d0" hs_bindgen_7bb9a5e7ad4158d0 :: + 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:2303: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_7bb9a5e7ad4158d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_835eb7fbc22f6be2" hs_bindgen_835eb7fbc22f6be2 :: + 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_835eb7fbc22f6be2 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2316: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_835eb7fbc22f6be2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_5a8641b7b5b7ebcb" hs_bindgen_5a8641b7b5b7ebcb :: + 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:2324:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_5a8641b7b5b7ebcb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_f0968021256b8c32" hs_bindgen_f0968021256b8c32 :: + 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:2333: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_f0968021256b8c32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_b8731b5733264e64" hs_bindgen_b8731b5733264e64 :: + 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:2344: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_b8731b5733264e64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_d5d8ec1f9072f2b2" hs_bindgen_d5d8ec1f9072f2b2 :: + 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_d5d8ec1f9072f2b2 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2355: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_d5d8ec1f9072f2b2 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_f7769f64190c5048" hs_bindgen_f7769f64190c5048 :: + 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:2362:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_f7769f64190c5048 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_062db861a64288e9" hs_bindgen_062db861a64288e9 :: + 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_062db861a64288e9 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2365: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_062db861a64288e9 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_d1af6ca847197969" hs_bindgen_d1af6ca847197969 :: + 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_d1af6ca847197969 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2368: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_d1af6ca847197969 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_da5982def8ba4f8a" hs_bindgen_da5982def8ba4f8a :: + 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:2380: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_da5982def8ba4f8a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_0db021420c646595" hs_bindgen_0db021420c646595 :: + 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:2388: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_0db021420c646595 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_4b4702cad8ca69c6" hs_bindgen_4b4702cad8ca69c6 :: + 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_4b4702cad8ca69c6 + +{-| 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:2403: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_4b4702cad8ca69c6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_2b2d42090bcbfc1d" hs_bindgen_2b2d42090bcbfc1d :: + 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_2b2d42090bcbfc1d + +{-| 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:2422: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_2b2d42090bcbfc1d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_f7b1ab55b3482ddf" hs_bindgen_f7b1ab55b3482ddf :: + 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_f7b1ab55b3482ddf + +{-| 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:2438: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_f7b1ab55b3482ddf x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_60c424087a59c879" hs_bindgen_60c424087a59c879 :: + 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_60c424087a59c879 + +{-| 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:2465: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_60c424087a59c879 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_8_1_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_bd29a0dac09f1581" hs_bindgen_bd29a0dac09f1581 :: + 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:2483: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_bd29a0dac09f1581 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_f6513b31946b645e" hs_bindgen_f6513b31946b645e :: + 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:2504: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_f6513b31946b645e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_14f1bb31c899e919" hs_bindgen_14f1bb31c899e919 :: + 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:2525: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_14f1bb31c899e919 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_99c3eaed027ba906" hs_bindgen_99c3eaed027ba906 :: + 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:2550:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_99c3eaed027ba906 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_a24865bd12e484f7" hs_bindgen_a24865bd12e484f7 :: + 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:2558: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_a24865bd12e484f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_21c8797620743f34" hs_bindgen_21c8797620743f34 :: + 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:2568: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_21c8797620743f34 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_b52d88cb6d142215" hs_bindgen_b52d88cb6d142215 :: + 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:2579: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_b52d88cb6d142215 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_11e1b81ed511c027" hs_bindgen_11e1b81ed511c027 :: + 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:2591: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_11e1b81ed511c027 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_73bf100a8490ce66" hs_bindgen_73bf100a8490ce66 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2598: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_73bf100a8490ce66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_656ffa4d1eb3cfc2" hs_bindgen_656ffa4d1eb3cfc2 :: + 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:2612: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_656ffa4d1eb3cfc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_b54c35fef9b1ace4" hs_bindgen_b54c35fef9b1ace4 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2624: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_b54c35fef9b1ace4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_01c29ce9c8746114" hs_bindgen_01c29ce9c8746114 :: + 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:2635: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_01c29ce9c8746114 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_1f2d82082210fca8" hs_bindgen_1f2d82082210fca8 :: + 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:2647: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_1f2d82082210fca8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_8_1_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_fc2539146bdde271" hs_bindgen_fc2539146bdde271 :: + 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:2654: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_fc2539146bdde271 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0.hs new file mode 100644 index 00000000..fd077b42 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0.hs @@ -0,0 +1,1705 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_9_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +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 = (20250506 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @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 + +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' + +__defined at:__ @botan\/ffi.h:161:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Deref = Botan_view_bin_fn_Deref + { un_Botan_view_bin_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_02e9fa8db664e716 :: + Botan_view_bin_fn_Deref + -> IO (Ptr.FunPtr Botan_view_bin_fn_Deref) + +-- | __unique:__ @fromBotan_view_bin_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_36a0f55b5fe97d72 :: + Ptr.FunPtr Botan_view_bin_fn_Deref + -> Botan_view_bin_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Deref where + + toFunPtr = hs_bindgen_02e9fa8db664e716 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Deref where + + fromFunPtr = hs_bindgen_36a0f55b5fe97d72 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Deref) "un_Botan_view_bin_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Deref" (Ptr.Ptr Botan_view_bin_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" where + + type CFieldType Botan_view_bin_fn_Deref "un_Botan_view_bin_fn_Deref" = + 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_Deref + } + 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_Deref + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__defined at:__ @botan\/ffi.h:170:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Deref = Botan_view_str_fn_Deref + { un_Botan_view_str_fn_Deref :: 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_Deref@ +foreign import ccall safe "wrapper" hs_bindgen_beb86223dbb355cd :: + Botan_view_str_fn_Deref + -> IO (Ptr.FunPtr Botan_view_str_fn_Deref) + +-- | __unique:__ @fromBotan_view_str_fn_Deref@ +foreign import ccall safe "dynamic" hs_bindgen_dda87940bfd98feb :: + Ptr.FunPtr Botan_view_str_fn_Deref + -> Botan_view_str_fn_Deref + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Deref where + + toFunPtr = hs_bindgen_beb86223dbb355cd + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Deref where + + fromFunPtr = hs_bindgen_dda87940bfd98feb + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Deref) "un_Botan_view_str_fn_Deref") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Deref" (Ptr.Ptr Botan_view_str_fn_Deref) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Deref") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" where + + type CFieldType Botan_view_str_fn_Deref "un_Botan_view_str_fn_Deref" = + 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_Deref + } + 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_Deref + + 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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @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:__ @botan_asn1_oid_struct@ + + __defined at:__ @botan\/ffi.h:1121:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_asn1_oid_struct + +{-| __C declaration:__ @botan_asn1_oid_t@ + + __defined at:__ @botan\/ffi.h:1121: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:__ @botan_ec_group_struct@ + + __defined at:__ @botan\/ffi.h:1170:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_ec_group_struct + +{-| __C declaration:__ @botan_ec_group_t@ + + __defined at:__ @botan\/ffi.h:1170: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:__ @botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1304:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1304: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:1327: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:1397: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:1398: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:1399:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1537:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1537: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:__ @botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1898:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1898: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:__ @botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1922:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1922: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:1943:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1945:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1945: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:__ @botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1965:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1965: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:__ @botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1984:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1984: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:__ @botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:2013: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:2013: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:__ @botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:2043: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:2043: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:__ @botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:2107:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:2107: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:__ @botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:2157: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 + +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:2158: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:2159: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:2160: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:2161: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:2162: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:2163: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:2164: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:2165: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:2166: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:2167: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:__ @botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:2208:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:2208: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:__ @botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2285:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2285: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:__ @botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2317:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2317: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:__ @botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2357:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2357: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:2359: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:__ @botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2380: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:2380: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:__ @botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2538:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2538: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:__ @botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2543:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2543: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:__ @botan_tpm2_crypto_backend_state_struct@ + + __defined at:__ @botan\/ffi.h:2548: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:2548: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:__ @ESYS_CONTEXT@ + + __defined at:__ @botan\/ffi.h:2550: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_9_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/FunPtr.hs new file mode 100644 index 00000000..c57a1ab3 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/FunPtr.hs @@ -0,0 +1,10186 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_9_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_9_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_9_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f0b11054b95a1d93 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_2ea181809f5d6b23 (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_cb86fed0c97cb191 (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3a4ff0876d1096d0 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_eefbaf3f2908c640 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_f577b3f188184d73 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_0de569db300cb88f (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_c3c4c6d9bf88f2c8 (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_b5f89fd8c5af17ac (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eaf11672442466df (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_826d33fafb85c4ca (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2b27cda04f89f1c (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6469e8805ab6b52b (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aafdd86bbec8c03b (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd92f6e0ad9988f0 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4013bdc9c57f105 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d28d1e804433bfec (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5193491704abe116 (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_9_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76f5869805ef2d72 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc7b22d1f40fe5f7 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc86ed1558b8186d (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c326656bf438de51 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a83ca6a55b59b6a (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96acaca99eec72ef (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_315abec573edab50 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2af1764d56c92b51 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3074def23231e2f4 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c405cd8c9869f36a (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8302a308b7fb0992 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_acd2535eab84e23c (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c16b7411a603692 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1e130c4d156e4a4 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b55fa5985143c544 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b334a271b5e19e91 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7835ad633138fc97 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c92bfd9f8d49a48 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f308ba3c3f1f236 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a0b8a59dd97dea5 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bfe8ad2188b059e3 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4201207931c99bf7 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e0767a307947d8f (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7b5e0660b8c66ca2 (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_9_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a634878c28d8ed2b (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b310616121d2393 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3643858db373b875 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_71266a2c89095b81 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7550a4aa0f2c879 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6fe4ca7dd88c84b (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6a449f9fdce4a9e9 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29490cc8b62902c7 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0af817e0abdb985c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe9515114d83f37f (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_87b9d9cf0bbc06aa (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1cefd7cba603147d (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbf77fc7cad82e78 (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_9_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc8d5f5a60485674 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de07f2ed4ae2ccf1 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_696f9a51af73168b (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7d65972779bbacf (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bae3f588971298c9 (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_9_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d6dd9947f0d5f50 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_48bcab8012ba8709 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f68a7ccc4f1cc01 (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_9_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_257f81b47e81bd1c (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_9_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_109cec23e6481356 (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_9_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4649c791f2ff53f1 (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_9_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90a256550fea347c (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_9_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_384e36a74961b02c (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_9_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_082a69294e095017 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5677ef9cddbae5d1 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da3660982e8500bd (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d1603102d26d829 (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_9_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7927e1cd43c9897d (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03480d605215526f (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_9_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_29aab2b22b24e6e7 (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_9_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1828152badea7d8 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1898278e68643d27 (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_9_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_084a2872299bd2d4 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_000bae20ce26b444 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88d1bcf7e8eefbca (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9564fa2408f5238 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e16c89302bce9d83 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d59bc44bec1a5a91 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37d9e8852557b5b4 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ca9b5fb47d18c0b4 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc12d09b42d990e5 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e294ebf2a2d8396 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_64ba2096dcdb3fce (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97d5b53d7d9e281f (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9be884b8b4430da (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19bd2cebc1296f2d (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_242733baa2a66b90 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e42de50489173a6 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0cc15414e1e657a5 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1fa76e05fe4d38d0 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_50f3cf7ca5af5f2f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b574cb26f54b75bd (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c73577103a912cea (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f004726647dccd2b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e75d0672c5402eb5 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f730807d78f4da7d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_871a3fc756249b3f (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b4f30935f9d7db35 (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_9_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e396ac01e615fa09 (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_9_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a41e4c0aed2658fc (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b766ef93ae4f71e (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1c65fced5c46a3d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5dea8b78637e69e9 (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_9_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef3befe99ac3a872 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57020719ccd2e495 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_643a3c4db10a800b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6328233b46e07d50 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_316bb5a9e8ef4df7 (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_9_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b907424cd70539cc (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_beeb1c8a0bd65f95 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f412ce0674e10c23 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1319cc042cb94ecf (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea6e4dc0d5ea9c87 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d972d0bc1cce017d (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_9_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d28d7f3473bd911 (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc9bfd66325ddc24 (void)) (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return &botan_oid_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_from_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8866c7e1c436991c (void)) (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_from_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_register */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e75c7f22e77e69b (void)) (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_register;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_view_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0850d26e4e4663b (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_9_0_get_botan_oid_view_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9a39c3878dce55b (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_9_0_get_botan_oid_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_090bac4e0e6f095b (void)) (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_oid_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a68fb4b50c086ef8 (void)) (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return &botan_oid_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3da4f61d813244a (void)) (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return &botan_ec_group_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_supports_application_specific_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d758bc34ad7147d7 (void)) (" + , " signed int *arg1" + , ")" + , "{" + , " return &botan_ec_group_supports_application_specific_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_supports_named_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec7fe79617b0acaf (void)) (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_ec_group_supports_named_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_params */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_84aceb5eb939d7c1 (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_9_0_get_botan_ec_group_from_ber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7d29241f4044962 (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_9_0_get_botan_ec_group_from_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efa4758e1dcf3598 (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c6f2c403c90c543 (void)) (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_ec_group_from_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7f1e5641c2086b2 (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0180a4fc3fa9235c (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_9_0_get_botan_ec_group_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a02e82b863d496d8 (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_9_0_get_botan_ec_group_get_curve_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_17eb6e4046262fb2 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_curve_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5378a7c77e041076 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_a */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c25e0f3b7f359b1 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_a;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_b */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5b82f0d1dfb7d026 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_b;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_g_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d531bf6c997680ba (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_g_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e1cf5ad1450f35f (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_order */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_806a76457c254b37 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_order;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5160e8c3a7d3995 (void)) (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_faede230c6444d85 (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_9_0_get_botan_ec_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0836ff79c5a029db (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_9_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1426ba303dda832d (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e8fbba4bf59bf75e (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c2f2c07ffb7c0cb8 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de217fa371a56810 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2298c552fc563479 (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_9_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0127ee04f904e52b (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a16f4000386644e4 (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_9_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a22dbbc932d2317 (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_9_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_acf70828b803bfcf (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_9_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bcf9544e7b40c69 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f88b130bd18df87 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cc17e1dca36ca2ae (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_9_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dcf97bb2a346e276 (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_9_0_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1cb85cc5363c788 (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_9_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_046fe40a8a4e3df6 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb9fddefdf77c5b3 (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_9_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4ec460afd7b916cf (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_9_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81824de63d8af413 (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_9_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c110fd3b1ae27856 (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_9_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f300ab171a249b8e (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_9_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6e6ce875ae9161e (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_9_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5dd92ec431a5d2d (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_9_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1cefdd8d85b9107a (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8414016312e2c1d (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72e93a431764a218 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5af7b724d52d36b (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_9_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9501fd38d4d22477 (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_9_0_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1babe2d1a2460f93 (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_9_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77c7f821549721f1 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e7e625c0d7a0b6df (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4882f288141aa290 (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5008aaf18e39277e (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_155ed0bc138a002b (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1a6988246db28934 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95746f5304cd0b5c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e72413b57b4c1796 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d607a10f8e57505 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_stateful_operation */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a953adfa1521225 (void)) (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_privkey_stateful_operation;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_remaining_operations */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f8824ed67aa81671 (void)) (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_privkey_remaining_operations;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b4bdcae73e6a1a08 (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_9_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8603726f5c9686b4 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92b56a879cbfaf5b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0c8ed228972a82c (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_88beb7d6741a83e9 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9212f9997d2b3500 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6f51f6164cb509b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83c60f7f7ce0c055 (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_9_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d91180aa3c142590 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ddfd8b23f0bbce77 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92e3e6a5282bed88 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe1394a1277326c5 (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_9_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd303c3a479393a3 (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_9_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a2b06c8aab350e0 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7f6021864443487 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b105b3c65982e0f9 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f1a914a2b2f554bd (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2effdecff62de110 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_748ee9073f15228a (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_9_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fb45d81ec3d1971 (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_9_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_029db5c8444e9933 (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_9_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f394945d65131ecc (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_9_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fff3d62d4961ad4c (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1739322246a88ddc (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70f4632334555754 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2082027aae927695 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4952e6ab644d91ee (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81c6fa6645fdd9aa (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59e2a0b3c9c138de (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5ba6412989e14a00 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3187d9d899ab050f (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b9c55c11637bd84 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a7dc950e8d26b9d (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9034228310eba274 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_620f4f73d848b715 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5e6887576f5dd59b (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd96ab2299b903b6 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c82e9e9816c7f0d7 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9527b96eef273ed (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_9_0_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d55c5db12269246f (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_9_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee5d8d2b73025ba8 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c14307b6cdd924c5 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e125fddda17b718b (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_9_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d788ead5ce3af951 (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_9_0_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41488a1c6d51dfd7 (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_9_0_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_989b9e058bf36e50 (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_9_0_get_botan_privkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da1ba187d1fde579 (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_9_0_get_botan_pubkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f7d82fabb0f04d06 (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_9_0_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4106461a7757ecf5 (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_9_0_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c2a47d3d6946738f (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_9_0_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1dc501dddb8f98a (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_9_0_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3432a0160fe82dd (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_9_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35ad2dc9002737d1 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0f1a5cf5f1a084be (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d433661576f520fa (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_9_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0645760001f56378 (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_9_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7992fd658ec9b322 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0bd998eb926ecbe2 (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_9_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_17001e19909bf5df (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bd63909747f3d622 (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_9_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_193c9022b8454e32 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf5390618929e835 (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_9_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_587252b4c877b4dc (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_9_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6c4251cec129cfc (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_9_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_215544968647d7c5 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e39bc464f0e6b962 (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_9_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83b4eefa064e9720 (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_9_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_591e8f0e3a4d4207 (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_9_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6b0b03020ee5e754 (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9941dd9078294cc5 (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_9_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f99ed55cb5168d0e (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_9_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7bc5e8d34fb2d6f (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_9_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f9a55038b6bc785e (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9fa9474781a69c3a (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_622a150a738c8c85 (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_9_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_533bc257c70e639d (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_9_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_85ae14270a4d2eac (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_9_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b66ac96639fb479c (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae8d402693854cde (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_9_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ece8da57ed72cabc (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_9_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c46995dee17e702 (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_9_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9926fe258bdcf3af (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a964e203d9968eed (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_9_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a35d25ecfc37fbe (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_9_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92de9b688481316d (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b32c431a3e35ed95 (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_9_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bb0c8f087df1d27 (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_9_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f95246aba8da388 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1de4684527be1642 (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_9_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24938898a491584a (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_9_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a52f7c31a920de6 (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_9_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c343bc1f452726b (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_9_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30f0ec6ba6787141 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_079b6c6b4aa5e5f0 (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_9_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ddc921239ad07212 (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_9_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2ed9b73183c8e49 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_526bd48310fae365 (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_9_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4c3644deeedaf60b (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_9_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0fa4cec97bf47715 (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bacca9e37c8f0ddd (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1734c458666237d7 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_147a3bf50ca31729 (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_242fc32d8acdbe65 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_985b2942c203227d (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc342e2671babd96 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_37f16ff76a3436bd (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_837609d1765eaabd (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_9_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f038834ca45de54 (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_9_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc8b4311fc35e04c (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_9_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb95e7af3406876c (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_9_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_601ea5a332d37d2c (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_9_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_51aedd94aee53add (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_9_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8e4c64db8e5fd50b (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c73386816fd4e2cf (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_9_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_75850d3a216bc246 (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_9_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db8dc9e0b40ab099 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f81b00ec7bf3a78 (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_9_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fe987cb0117ff363 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1874d7308eb0faa7 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76940a9ea512048d (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_9_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_83020da657a08e69 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18ec96df8e26675e (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c354467ab4c0e067 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26e1f62c8396fead (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4be2db5a20e34a1 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_695107a36677e674 (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_9_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4980df5a49cdd807 (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_9_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fb645ad5739f2209 (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_9_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0f91ac65869d82a6 (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_9_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_620a97a1cdddedc0 (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_9_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b78c2b16a493283d (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_9_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fab01bdfcdbbdc6 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_19165eb1f0c30701 (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e569d859b55367d3 (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_9_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26486a2d20ecd01b (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_9_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5937be6f7294f93d (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55338b5e2f8ee559 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a03104aa2f98ef1 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34d2d206dc549544 (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_9_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a70da78edc94a81 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f057fb2597fcf78 (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_9_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c12dd84d5a8b6d3 (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_9_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fafe4d50158e27ce (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f83cf18f11cddcb9 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbfe32396926240b (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_9_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7652de1b8cbd5b21 (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_9_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5bc55206baeaf254 (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_9_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94248d9a57f2e216 (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_9_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_692a89ac00f16fc4 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10f1931af033408a (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_9_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a313b599318592d2 (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_9_0_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d644b1577a10e1d5 (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a87e08913f8ae120 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ff386a40d1e3a51 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_from_esys */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8877c4bfe73e4ca9 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_from_esys;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2c9b5c239998b414 (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b54fb50e8a431165 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1849ad27d0562368 (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_9_0_get_botan_tpm2_crypto_backend_state_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_522a6f1a9e99a743 (void)) (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return &botan_tpm2_crypto_backend_state_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d47bfa5a5f9070b9 (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_9_0_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e36aad3831eb530e (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_213cfe4647123ac3 (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_f0b11054b95a1d93" hs_bindgen_f0b11054b95a1d93 :: + 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_f0b11054b95a1d93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_2ea181809f5d6b23" hs_bindgen_2ea181809f5d6b23 :: + 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_2ea181809f5d6b23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_cb86fed0c97cb191" hs_bindgen_cb86fed0c97cb191 :: + 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_cb86fed0c97cb191 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_3a4ff0876d1096d0" hs_bindgen_3a4ff0876d1096d0 :: + 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_3a4ff0876d1096d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_eefbaf3f2908c640" hs_bindgen_eefbaf3f2908c640 :: + 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_eefbaf3f2908c640 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_f577b3f188184d73" hs_bindgen_f577b3f188184d73 :: + 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_f577b3f188184d73 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_0de569db300cb88f" hs_bindgen_0de569db300cb88f :: + 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_0de569db300cb88f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_c3c4c6d9bf88f2c8" hs_bindgen_c3c4c6d9bf88f2c8 :: + 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_c3c4c6d9bf88f2c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_b5f89fd8c5af17ac" hs_bindgen_b5f89fd8c5af17ac :: + 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_b5f89fd8c5af17ac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_eaf11672442466df" hs_bindgen_eaf11672442466df :: + 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_eaf11672442466df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_826d33fafb85c4ca" hs_bindgen_826d33fafb85c4ca :: + 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_826d33fafb85c4ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_f2b27cda04f89f1c" hs_bindgen_f2b27cda04f89f1c :: + 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_f2b27cda04f89f1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_6469e8805ab6b52b" hs_bindgen_6469e8805ab6b52b :: + 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_6469e8805ab6b52b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_aafdd86bbec8c03b" hs_bindgen_aafdd86bbec8c03b :: + 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_aafdd86bbec8c03b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_cd92f6e0ad9988f0" hs_bindgen_cd92f6e0ad9988f0 :: + 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_cd92f6e0ad9988f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_e4013bdc9c57f105" hs_bindgen_e4013bdc9c57f105 :: + 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_e4013bdc9c57f105 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_d28d1e804433bfec" hs_bindgen_d28d1e804433bfec :: + 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_d28d1e804433bfec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_5193491704abe116" hs_bindgen_5193491704abe116 :: + 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_5193491704abe116 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_76f5869805ef2d72" hs_bindgen_76f5869805ef2d72 :: + 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_76f5869805ef2d72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_cc7b22d1f40fe5f7" hs_bindgen_cc7b22d1f40fe5f7 :: + 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_cc7b22d1f40fe5f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_dc86ed1558b8186d" hs_bindgen_dc86ed1558b8186d :: + 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_dc86ed1558b8186d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_c326656bf438de51" hs_bindgen_c326656bf438de51 :: + 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_c326656bf438de51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_7a83ca6a55b59b6a" hs_bindgen_7a83ca6a55b59b6a :: + 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_7a83ca6a55b59b6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_96acaca99eec72ef" hs_bindgen_96acaca99eec72ef :: + 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_96acaca99eec72ef + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_315abec573edab50" hs_bindgen_315abec573edab50 :: + 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_315abec573edab50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_2af1764d56c92b51" hs_bindgen_2af1764d56c92b51 :: + 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_2af1764d56c92b51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_3074def23231e2f4" hs_bindgen_3074def23231e2f4 :: + 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_3074def23231e2f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_c405cd8c9869f36a" hs_bindgen_c405cd8c9869f36a :: + 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_c405cd8c9869f36a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_8302a308b7fb0992" hs_bindgen_8302a308b7fb0992 :: + 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_8302a308b7fb0992 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_acd2535eab84e23c" hs_bindgen_acd2535eab84e23c :: + 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_acd2535eab84e23c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_1c16b7411a603692" hs_bindgen_1c16b7411a603692 :: + 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_1c16b7411a603692 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_f1e130c4d156e4a4" hs_bindgen_f1e130c4d156e4a4 :: + 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_f1e130c4d156e4a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_b55fa5985143c544" hs_bindgen_b55fa5985143c544 :: + 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_b55fa5985143c544 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_b334a271b5e19e91" hs_bindgen_b334a271b5e19e91 :: + 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_b334a271b5e19e91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_7835ad633138fc97" hs_bindgen_7835ad633138fc97 :: + 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_7835ad633138fc97 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_1c92bfd9f8d49a48" hs_bindgen_1c92bfd9f8d49a48 :: + 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_1c92bfd9f8d49a48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_3f308ba3c3f1f236" hs_bindgen_3f308ba3c3f1f236 :: + 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_3f308ba3c3f1f236 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_1a0b8a59dd97dea5" hs_bindgen_1a0b8a59dd97dea5 :: + 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_1a0b8a59dd97dea5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_bfe8ad2188b059e3" hs_bindgen_bfe8ad2188b059e3 :: + 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_bfe8ad2188b059e3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_4201207931c99bf7" hs_bindgen_4201207931c99bf7 :: + 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_4201207931c99bf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_7e0767a307947d8f" hs_bindgen_7e0767a307947d8f :: + 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_7e0767a307947d8f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_7b5e0660b8c66ca2" hs_bindgen_7b5e0660b8c66ca2 :: + 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_7b5e0660b8c66ca2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_a634878c28d8ed2b" hs_bindgen_a634878c28d8ed2b :: + 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_a634878c28d8ed2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_3b310616121d2393" hs_bindgen_3b310616121d2393 :: + 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_3b310616121d2393 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_3643858db373b875" hs_bindgen_3643858db373b875 :: + 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_3643858db373b875 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_71266a2c89095b81" hs_bindgen_71266a2c89095b81 :: + 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_71266a2c89095b81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_f7550a4aa0f2c879" hs_bindgen_f7550a4aa0f2c879 :: + 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_f7550a4aa0f2c879 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_c6fe4ca7dd88c84b" hs_bindgen_c6fe4ca7dd88c84b :: + 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_c6fe4ca7dd88c84b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_6a449f9fdce4a9e9" hs_bindgen_6a449f9fdce4a9e9 :: + 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_6a449f9fdce4a9e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_29490cc8b62902c7" hs_bindgen_29490cc8b62902c7 :: + 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_29490cc8b62902c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_0af817e0abdb985c" hs_bindgen_0af817e0abdb985c :: + 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_0af817e0abdb985c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_fe9515114d83f37f" hs_bindgen_fe9515114d83f37f :: + 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_fe9515114d83f37f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_87b9d9cf0bbc06aa" hs_bindgen_87b9d9cf0bbc06aa :: + 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_87b9d9cf0bbc06aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_1cefd7cba603147d" hs_bindgen_1cefd7cba603147d :: + 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_1cefd7cba603147d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_cbf77fc7cad82e78" hs_bindgen_cbf77fc7cad82e78 :: + 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_cbf77fc7cad82e78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_dc8d5f5a60485674" hs_bindgen_dc8d5f5a60485674 :: + 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_dc8d5f5a60485674 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_de07f2ed4ae2ccf1" hs_bindgen_de07f2ed4ae2ccf1 :: + 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_de07f2ed4ae2ccf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_696f9a51af73168b" hs_bindgen_696f9a51af73168b :: + 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_696f9a51af73168b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_f7d65972779bbacf" hs_bindgen_f7d65972779bbacf :: + 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_f7d65972779bbacf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_bae3f588971298c9" hs_bindgen_bae3f588971298c9 :: + 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_bae3f588971298c9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_1d6dd9947f0d5f50" hs_bindgen_1d6dd9947f0d5f50 :: + 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_1d6dd9947f0d5f50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_48bcab8012ba8709" hs_bindgen_48bcab8012ba8709 :: + 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_48bcab8012ba8709 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_8f68a7ccc4f1cc01" hs_bindgen_8f68a7ccc4f1cc01 :: + 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_8f68a7ccc4f1cc01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_257f81b47e81bd1c" hs_bindgen_257f81b47e81bd1c :: + 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_257f81b47e81bd1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_109cec23e6481356" hs_bindgen_109cec23e6481356 :: + 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_109cec23e6481356 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_4649c791f2ff53f1" hs_bindgen_4649c791f2ff53f1 :: + 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_4649c791f2ff53f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_90a256550fea347c" hs_bindgen_90a256550fea347c :: + 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_90a256550fea347c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_384e36a74961b02c" hs_bindgen_384e36a74961b02c :: + 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_384e36a74961b02c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_082a69294e095017" hs_bindgen_082a69294e095017 :: + 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_082a69294e095017 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_5677ef9cddbae5d1" hs_bindgen_5677ef9cddbae5d1 :: + 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_5677ef9cddbae5d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_da3660982e8500bd" hs_bindgen_da3660982e8500bd :: + 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_da3660982e8500bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_9d1603102d26d829" hs_bindgen_9d1603102d26d829 :: + 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_9d1603102d26d829 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_7927e1cd43c9897d" hs_bindgen_7927e1cd43c9897d :: + 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_7927e1cd43c9897d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_03480d605215526f" hs_bindgen_03480d605215526f :: + 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_03480d605215526f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_29aab2b22b24e6e7" hs_bindgen_29aab2b22b24e6e7 :: + 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_29aab2b22b24e6e7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_c1828152badea7d8" hs_bindgen_c1828152badea7d8 :: + 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_c1828152badea7d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_1898278e68643d27" hs_bindgen_1898278e68643d27 :: + 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_1898278e68643d27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_084a2872299bd2d4" hs_bindgen_084a2872299bd2d4 :: + 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_084a2872299bd2d4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_000bae20ce26b444" hs_bindgen_000bae20ce26b444 :: + 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_000bae20ce26b444 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_88d1bcf7e8eefbca" hs_bindgen_88d1bcf7e8eefbca :: + 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:937: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_88d1bcf7e8eefbca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_e9564fa2408f5238" hs_bindgen_e9564fa2408f5238 :: + 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:942: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_e9564fa2408f5238 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_e16c89302bce9d83" hs_bindgen_e16c89302bce9d83 :: + 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:947: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_e16c89302bce9d83 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_d59bc44bec1a5a91" hs_bindgen_d59bc44bec1a5a91 :: + 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:952: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_d59bc44bec1a5a91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_37d9e8852557b5b4" hs_bindgen_37d9e8852557b5b4 :: + 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:957: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_37d9e8852557b5b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_ca9b5fb47d18c0b4" hs_bindgen_ca9b5fb47d18c0b4 :: + 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:962: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_ca9b5fb47d18c0b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_cc12d09b42d990e5" hs_bindgen_cc12d09b42d990e5 :: + 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:968: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_cc12d09b42d990e5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_9e294ebf2a2d8396" hs_bindgen_9e294ebf2a2d8396 :: + 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:973: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_9e294ebf2a2d8396 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_64ba2096dcdb3fce" hs_bindgen_64ba2096dcdb3fce :: + 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:978: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_64ba2096dcdb3fce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_97d5b53d7d9e281f" hs_bindgen_97d5b53d7d9e281f :: + 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:983: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_97d5b53d7d9e281f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_d9be884b8b4430da" hs_bindgen_d9be884b8b4430da :: + 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:988: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_d9be884b8b4430da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_19bd2cebc1296f2d" hs_bindgen_19bd2cebc1296f2d :: + 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:993: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_19bd2cebc1296f2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_242733baa2a66b90" hs_bindgen_242733baa2a66b90 :: + 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:1000: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_242733baa2a66b90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_7e42de50489173a6" hs_bindgen_7e42de50489173a6 :: + 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:1005: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_7e42de50489173a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_0cc15414e1e657a5" hs_bindgen_0cc15414e1e657a5 :: + 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:1007: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_0cc15414e1e657a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_1fa76e05fe4d38d0" hs_bindgen_1fa76e05fe4d38d0 :: + 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:1009: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_1fa76e05fe4d38d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_50f3cf7ca5af5f2f" hs_bindgen_50f3cf7ca5af5f2f :: + 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:1011: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_50f3cf7ca5af5f2f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_b574cb26f54b75bd" hs_bindgen_b574cb26f54b75bd :: + 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:1012: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_b574cb26f54b75bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_c73577103a912cea" hs_bindgen_c73577103a912cea :: + 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:1014: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_c73577103a912cea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_f004726647dccd2b" hs_bindgen_f004726647dccd2b :: + 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:1015: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_f004726647dccd2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_e75d0672c5402eb5" hs_bindgen_e75d0672c5402eb5 :: + 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:1017: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_e75d0672c5402eb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_f730807d78f4da7d" hs_bindgen_f730807d78f4da7d :: + 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:1018: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_f730807d78f4da7d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_871a3fc756249b3f" hs_bindgen_871a3fc756249b3f :: + 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:1019: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_871a3fc756249b3f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_b4f30935f9d7db35" hs_bindgen_b4f30935f9d7db35 :: + 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:1022: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_b4f30935f9d7db35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_e396ac01e615fa09" hs_bindgen_e396ac01e615fa09 :: + 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:1025: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_e396ac01e615fa09 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_a41e4c0aed2658fc" hs_bindgen_a41e4c0aed2658fc :: + 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:1032: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_a41e4c0aed2658fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_1b766ef93ae4f71e" hs_bindgen_1b766ef93ae4f71e :: + 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:1039: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_1b766ef93ae4f71e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_e1c65fced5c46a3d" hs_bindgen_e1c65fced5c46a3d :: + 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:1044: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_e1c65fced5c46a3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_5dea8b78637e69e9" hs_bindgen_5dea8b78637e69e9 :: + 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:1048: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_5dea8b78637e69e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_ef3befe99ac3a872" hs_bindgen_ef3befe99ac3a872 :: + 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:1050: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_ef3befe99ac3a872 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_57020719ccd2e495" hs_bindgen_57020719ccd2e495 :: + 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:1051: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_57020719ccd2e495 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_643a3c4db10a800b" hs_bindgen_643a3c4db10a800b :: + 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:1053: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_643a3c4db10a800b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_6328233b46e07d50" hs_bindgen_6328233b46e07d50 :: + 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:1055: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_6328233b46e07d50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_316bb5a9e8ef4df7" hs_bindgen_316bb5a9e8ef4df7 :: + 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:1058: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_316bb5a9e8ef4df7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_b907424cd70539cc" hs_bindgen_b907424cd70539cc :: + 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:1060: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_b907424cd70539cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_beeb1c8a0bd65f95" hs_bindgen_beeb1c8a0bd65f95 :: + 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:1067: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_beeb1c8a0bd65f95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_f412ce0674e10c23" hs_bindgen_f412ce0674e10c23 :: + 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:1074: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_f412ce0674e10c23 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_1319cc042cb94ecf" hs_bindgen_1319cc042cb94ecf :: + 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:1079: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_1319cc042cb94ecf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_ea6e4dc0d5ea9c87" hs_bindgen_ea6e4dc0d5ea9c87 :: + 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:1084: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_ea6e4dc0d5ea9c87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_d972d0bc1cce017d" hs_bindgen_d972d0bc1cce017d :: + 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:1104: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_d972d0bc1cce017d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_4d28d7f3473bd911" hs_bindgen_4d28d7f3473bd911 :: + 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:1115: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_4d28d7f3473bd911 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_cc9bfd66325ddc24" hs_bindgen_cc9bfd66325ddc24 :: + 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:1126: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_cc9bfd66325ddc24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_8866c7e1c436991c" hs_bindgen_8866c7e1c436991c :: + 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)/__]: hanlder 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:1134: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_8866c7e1c436991c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_6e75c7f22e77e69b" hs_bindgen_6e75c7f22e77e69b :: + 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:1140: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_6e75c7f22e77e69b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_e0850d26e4e4663b" hs_bindgen_e0850d26e4e4663b :: + 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:1145: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_e0850d26e4e4663b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_a9a39c3878dce55b" hs_bindgen_a9a39c3878dce55b :: + 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:1150: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_a9a39c3878dce55b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_090bac4e0e6f095b" hs_bindgen_090bac4e0e6f095b :: + 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:1157: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_090bac4e0e6f095b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_a68fb4b50c086ef8" hs_bindgen_a68fb4b50c086ef8 :: + 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:1164: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_a68fb4b50c086ef8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_a3da4f61d813244a" hs_bindgen_a3da4f61d813244a :: + 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:1175: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_a3da4f61d813244a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_d758bc34ad7147d7" hs_bindgen_d758bc34ad7147d7 :: + 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:1182: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_d758bc34ad7147d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_ec7fe79617b0acaf" hs_bindgen_ec7fe79617b0acaf :: + 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:1189: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_ec7fe79617b0acaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_84aceb5eb939d7c1" hs_bindgen_84aceb5eb939d7c1 :: + 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:1205: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_84aceb5eb939d7c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_e7d29241f4044962" hs_bindgen_e7d29241f4044962 :: + 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:1221: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_e7d29241f4044962 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_efa4758e1dcf3598" hs_bindgen_efa4758e1dcf3598 :: + 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:1229: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_efa4758e1dcf3598 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_1c6f2c403c90c543" hs_bindgen_1c6f2c403c90c543 :: + 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:1237: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_1c6f2c403c90c543 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_b7f1e5641c2086b2" hs_bindgen_b7f1e5641c2086b2 :: + 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:1245: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_b7f1e5641c2086b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_0180a4fc3fa9235c" hs_bindgen_0180a4fc3fa9235c :: + 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:1251: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_0180a4fc3fa9235c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_a02e82b863d496d8" hs_bindgen_a02e82b863d496d8 :: + 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:1257: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_a02e82b863d496d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_17eb6e4046262fb2" hs_bindgen_17eb6e4046262fb2 :: + 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:1262: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_17eb6e4046262fb2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_5378a7c77e041076" hs_bindgen_5378a7c77e041076 :: + 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:1267: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_5378a7c77e041076 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_5c25e0f3b7f359b1" hs_bindgen_5c25e0f3b7f359b1 :: + 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:1272: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_5c25e0f3b7f359b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_5b82f0d1dfb7d026" hs_bindgen_5b82f0d1dfb7d026 :: + 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:1277: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_5b82f0d1dfb7d026 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_d531bf6c997680ba" hs_bindgen_d531bf6c997680ba :: + 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:1282: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_d531bf6c997680ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_1e1cf5ad1450f35f" hs_bindgen_1e1cf5ad1450f35f :: + 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:1287: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_1e1cf5ad1450f35f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_806a76457c254b37" hs_bindgen_806a76457c254b37 :: + 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:1292: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_806a76457c254b37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_b5160e8c3a7d3995" hs_bindgen_b5160e8c3a7d3995 :: + 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:1299: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_b5160e8c3a7d3995 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_faede230c6444d85" hs_bindgen_faede230c6444d85 :: + 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:1315: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_faede230c6444d85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_0836ff79c5a029db" hs_bindgen_0836ff79c5a029db :: + 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:1325: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_0836ff79c5a029db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_1426ba303dda832d" hs_bindgen_1426ba303dda832d :: + 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:1329: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_1426ba303dda832d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_e8fbba4bf59bf75e" hs_bindgen_e8fbba4bf59bf75e :: + 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:1332: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_e8fbba4bf59bf75e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_c2f2c07ffb7c0cb8" hs_bindgen_c2f2c07ffb7c0cb8 :: + 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:1334: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_c2f2c07ffb7c0cb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_de217fa371a56810" hs_bindgen_de217fa371a56810 :: + 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:1336: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_de217fa371a56810 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_2298c552fc563479" hs_bindgen_2298c552fc563479 :: + 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:1338: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_2298c552fc563479 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_0127ee04f904e52b" hs_bindgen_0127ee04f904e52b :: + 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:1340: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_0127ee04f904e52b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_a16f4000386644e4" hs_bindgen_a16f4000386644e4 :: + 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:1360: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_a16f4000386644e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_1a22dbbc932d2317" hs_bindgen_1a22dbbc932d2317 :: + 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:1382: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_1a22dbbc932d2317 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_acf70828b803bfcf" hs_bindgen_acf70828b803bfcf :: + 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:1390: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_acf70828b803bfcf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_6bcf9544e7b40c69" hs_bindgen_6bcf9544e7b40c69 :: + 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:1395: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_6bcf9544e7b40c69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_6f88b130bd18df87" hs_bindgen_6f88b130bd18df87 :: + 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:1409: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_6f88b130bd18df87 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_cc17e1dca36ca2ae" hs_bindgen_cc17e1dca36ca2ae :: + 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:1414: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_cc17e1dca36ca2ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_dcf97bb2a346e276" hs_bindgen_dcf97bb2a346e276 :: + 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:1419: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_dcf97bb2a346e276 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_e1cb85cc5363c788" hs_bindgen_e1cb85cc5363c788 :: + 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:1424: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_e1cb85cc5363c788 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_046fe40a8a4e3df6" hs_bindgen_046fe40a8a4e3df6 :: + 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:1426: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_046fe40a8a4e3df6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_bb9fddefdf77c5b3" hs_bindgen_bb9fddefdf77c5b3 :: + 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:1433: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_bb9fddefdf77c5b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_4ec460afd7b916cf" hs_bindgen_4ec460afd7b916cf :: + 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:1449: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_4ec460afd7b916cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_81824de63d8af413" hs_bindgen_81824de63d8af413 :: + 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:1465: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_81824de63d8af413 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_c110fd3b1ae27856" hs_bindgen_c110fd3b1ae27856 :: + 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:1482: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_c110fd3b1ae27856 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_f300ab171a249b8e" hs_bindgen_f300ab171a249b8e :: + 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:1497: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_f300ab171a249b8e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_d6e6ce875ae9161e" hs_bindgen_d6e6ce875ae9161e :: + 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:1513: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_d6e6ce875ae9161e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_b5dd92ec431a5d2d" hs_bindgen_b5dd92ec431a5d2d :: + 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:1528: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_b5dd92ec431a5d2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_1cefdd8d85b9107a" hs_bindgen_1cefdd8d85b9107a :: + 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:1539: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_1cefdd8d85b9107a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_b8414016312e2c1d" hs_bindgen_b8414016312e2c1d :: + 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:1541: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_b8414016312e2c1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_72e93a431764a218" hs_bindgen_72e93a431764a218 :: + 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:1544: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_72e93a431764a218 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d5af7b724d52d36b" hs_bindgen_d5af7b724d52d36b :: + 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:1549: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_d5af7b724d52d36b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_9501fd38d4d22477" hs_bindgen_9501fd38d4d22477 :: + 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:1554: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_9501fd38d4d22477 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_1babe2d1a2460f93" hs_bindgen_1babe2d1a2460f93 :: + 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:1559: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_1babe2d1a2460f93 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_77c7f821549721f1" hs_bindgen_77c7f821549721f1 :: + 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:1561: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_77c7f821549721f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_e7e625c0d7a0b6df" hs_bindgen_e7e625c0d7a0b6df :: + 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:1566: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_e7e625c0d7a0b6df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_4882f288141aa290" hs_bindgen_4882f288141aa290 :: + 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:1568: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_4882f288141aa290 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_5008aaf18e39277e" hs_bindgen_5008aaf18e39277e :: + 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:1571: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_5008aaf18e39277e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_155ed0bc138a002b" hs_bindgen_155ed0bc138a002b :: + 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:1576: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_155ed0bc138a002b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_1a6988246db28934" hs_bindgen_1a6988246db28934 :: + 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:1581: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_1a6988246db28934 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_95746f5304cd0b5c" hs_bindgen_95746f5304cd0b5c :: + 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:1583: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_95746f5304cd0b5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_e72413b57b4c1796" hs_bindgen_e72413b57b4c1796 :: + 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:1589: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_e72413b57b4c1796 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_4d607a10f8e57505" hs_bindgen_4d607a10f8e57505 :: + 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:1592: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_4d607a10f8e57505 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_7a953adfa1521225" hs_bindgen_7a953adfa1521225 :: + 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:1599: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_7a953adfa1521225 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_f8824ed67aa81671" hs_bindgen_f8824ed67aa81671 :: + 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:1606: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_f8824ed67aa81671 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_b4bdcae73e6a1a08" hs_bindgen_b4bdcae73e6a1a08 :: + 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:1611: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_b4bdcae73e6a1a08 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_8603726f5c9686b4" hs_bindgen_8603726f5c9686b4 :: + 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:1613: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_8603726f5c9686b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_92b56a879cbfaf5b" hs_bindgen_92b56a879cbfaf5b :: + 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:1616: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_92b56a879cbfaf5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_d0c8ed228972a82c" hs_bindgen_d0c8ed228972a82c :: + 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:1618: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_d0c8ed228972a82c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_88beb7d6741a83e9" hs_bindgen_88beb7d6741a83e9 :: + 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:1620: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_88beb7d6741a83e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_9212f9997d2b3500" hs_bindgen_9212f9997d2b3500 :: + 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:1622: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_9212f9997d2b3500 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_f6f51f6164cb509b" hs_bindgen_f6f51f6164cb509b :: + 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:1624: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_f6f51f6164cb509b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_83c60f7f7ce0c055" hs_bindgen_83c60f7f7ce0c055 :: + 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:1627: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_83c60f7f7ce0c055 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_d91180aa3c142590" hs_bindgen_d91180aa3c142590 :: + 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:1629: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_d91180aa3c142590 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_ddfd8b23f0bbce77" hs_bindgen_ddfd8b23f0bbce77 :: + 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:1632: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_ddfd8b23f0bbce77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_92e3e6a5282bed88" hs_bindgen_92e3e6a5282bed88 :: + 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:1634: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_92e3e6a5282bed88 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_fe1394a1277326c5" hs_bindgen_fe1394a1277326c5 :: + 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:1640: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_fe1394a1277326c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_bd303c3a479393a3" hs_bindgen_bd303c3a479393a3 :: + 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:1643: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_bd303c3a479393a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_5a2b06c8aab350e0" hs_bindgen_5a2b06c8aab350e0 :: + 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:1646: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_5a2b06c8aab350e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_c7f6021864443487" hs_bindgen_c7f6021864443487 :: + 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:1649: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_c7f6021864443487 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_b105b3c65982e0f9" hs_bindgen_b105b3c65982e0f9 :: + 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:1651: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_b105b3c65982e0f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_f1a914a2b2f554bd" hs_bindgen_f1a914a2b2f554bd :: + 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:1653: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_f1a914a2b2f554bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_2effdecff62de110" hs_bindgen_2effdecff62de110 :: + 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:1655: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_2effdecff62de110 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_748ee9073f15228a" hs_bindgen_748ee9073f15228a :: + 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:1670: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_748ee9073f15228a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_6fb45d81ec3d1971" hs_bindgen_6fb45d81ec3d1971 :: + 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:1684: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_6fb45d81ec3d1971 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_029db5c8444e9933" hs_bindgen_029db5c8444e9933 :: + 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:1702: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_029db5c8444e9933 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_f394945d65131ecc" hs_bindgen_f394945d65131ecc :: + 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:1717: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_f394945d65131ecc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_fff3d62d4961ad4c" hs_bindgen_fff3d62d4961ad4c :: + 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:1723: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_fff3d62d4961ad4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_1739322246a88ddc" hs_bindgen_1739322246a88ddc :: + 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:1725: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_1739322246a88ddc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_70f4632334555754" hs_bindgen_70f4632334555754 :: + 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:1728: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_70f4632334555754 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_2082027aae927695" hs_bindgen_2082027aae927695 :: + 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:1731: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_2082027aae927695 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_4952e6ab644d91ee" hs_bindgen_4952e6ab644d91ee :: + 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:1737: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_4952e6ab644d91ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_81c6fa6645fdd9aa" hs_bindgen_81c6fa6645fdd9aa :: + 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:1739: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_81c6fa6645fdd9aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_59e2a0b3c9c138de" hs_bindgen_59e2a0b3c9c138de :: + 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:1742: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_59e2a0b3c9c138de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_5ba6412989e14a00" hs_bindgen_5ba6412989e14a00 :: + 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:1745: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_5ba6412989e14a00 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_3187d9d899ab050f" hs_bindgen_3187d9d899ab050f :: + 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:1751: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_3187d9d899ab050f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_8b9c55c11637bd84" hs_bindgen_8b9c55c11637bd84 :: + 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:1753: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_8b9c55c11637bd84 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_2a7dc950e8d26b9d" hs_bindgen_2a7dc950e8d26b9d :: + 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:1756: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_2a7dc950e8d26b9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_9034228310eba274" hs_bindgen_9034228310eba274 :: + 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:1759: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_9034228310eba274 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_620f4f73d848b715" hs_bindgen_620f4f73d848b715 :: + 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:1765: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_620f4f73d848b715 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_5e6887576f5dd59b" hs_bindgen_5e6887576f5dd59b :: + 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:1767: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_5e6887576f5dd59b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_cd96ab2299b903b6" hs_bindgen_cd96ab2299b903b6 :: + 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:1770: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_cd96ab2299b903b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_c82e9e9816c7f0d7" hs_bindgen_c82e9e9816c7f0d7 :: + 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:1773: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_c82e9e9816c7f0d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_a9527b96eef273ed" hs_bindgen_a9527b96eef273ed :: + 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:1780: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_a9527b96eef273ed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_d55c5db12269246f" hs_bindgen_d55c5db12269246f :: + 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:1783: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_d55c5db12269246f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_ee5d8d2b73025ba8" hs_bindgen_ee5d8d2b73025ba8 :: + 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:1794: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_ee5d8d2b73025ba8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_c14307b6cdd924c5" hs_bindgen_c14307b6cdd924c5 :: + 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:1797: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_c14307b6cdd924c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_e125fddda17b718b" hs_bindgen_e125fddda17b718b :: + 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:1801: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_e125fddda17b718b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_d788ead5ce3af951" hs_bindgen_d788ead5ce3af951 :: + 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:1805: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_d788ead5ce3af951 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_41488a1c6d51dfd7" hs_bindgen_41488a1c6d51dfd7 :: + 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:1812: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_41488a1c6d51dfd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_989b9e058bf36e50" hs_bindgen_989b9e058bf36e50 :: + 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:1815: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_989b9e058bf36e50 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_da1ba187d1fde579" hs_bindgen_da1ba187d1fde579 :: + 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:1822: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_da1ba187d1fde579 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_f7d82fabb0f04d06" hs_bindgen_f7d82fabb0f04d06 :: + 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:1828: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_f7d82fabb0f04d06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_4106461a7757ecf5" hs_bindgen_4106461a7757ecf5 :: + 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:1838: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_4106461a7757ecf5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_c2a47d3d6946738f" hs_bindgen_c2a47d3d6946738f :: + 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:1841: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_c2a47d3d6946738f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_d1dc501dddb8f98a" hs_bindgen_d1dc501dddb8f98a :: + 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:1848: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_d1dc501dddb8f98a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_b3432a0160fe82dd" hs_bindgen_b3432a0160fe82dd :: + 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:1851: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_b3432a0160fe82dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_35ad2dc9002737d1" hs_bindgen_35ad2dc9002737d1 :: + 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:1857: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_35ad2dc9002737d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_0f1a5cf5f1a084be" hs_bindgen_0f1a5cf5f1a084be :: + 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:1860: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_0f1a5cf5f1a084be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_d433661576f520fa" hs_bindgen_d433661576f520fa :: + 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:1863: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_d433661576f520fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_0645760001f56378" hs_bindgen_0645760001f56378 :: + 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:1866: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_0645760001f56378 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_7992fd658ec9b322" hs_bindgen_7992fd658ec9b322 :: + 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:1869: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_7992fd658ec9b322 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_0bd998eb926ecbe2" hs_bindgen_0bd998eb926ecbe2 :: + 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:1872: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_0bd998eb926ecbe2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_17001e19909bf5df" hs_bindgen_17001e19909bf5df :: + 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:1875: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_17001e19909bf5df + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_bd63909747f3d622" hs_bindgen_bd63909747f3d622 :: + 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:1879: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_bd63909747f3d622 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_193c9022b8454e32" hs_bindgen_193c9022b8454e32 :: + 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:1883: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_193c9022b8454e32 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_bf5390618929e835" hs_bindgen_bf5390618929e835 :: + 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:1886: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_bf5390618929e835 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_587252b4c877b4dc" hs_bindgen_587252b4c877b4dc :: + 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:1893: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_587252b4c877b4dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_c6c4251cec129cfc" hs_bindgen_c6c4251cec129cfc :: + 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:1901: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_c6c4251cec129cfc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_215544968647d7c5" hs_bindgen_215544968647d7c5 :: + 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:1906: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_215544968647d7c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_e39bc464f0e6b962" hs_bindgen_e39bc464f0e6b962 :: + 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:1909: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_e39bc464f0e6b962 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_83b4eefa064e9720" hs_bindgen_83b4eefa064e9720 :: + 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:1912: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_83b4eefa064e9720 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_591e8f0e3a4d4207" hs_bindgen_591e8f0e3a4d4207 :: + 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:1925: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_591e8f0e3a4d4207 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_6b0b03020ee5e754" hs_bindgen_6b0b03020ee5e754 :: + 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:1930: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_6b0b03020ee5e754 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_9941dd9078294cc5" hs_bindgen_9941dd9078294cc5 :: + 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:1933: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_9941dd9078294cc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_f99ed55cb5168d0e" hs_bindgen_f99ed55cb5168d0e :: + 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:1936: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_f99ed55cb5168d0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_c7bc5e8d34fb2d6f" hs_bindgen_c7bc5e8d34fb2d6f :: + 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:1948: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_c7bc5e8d34fb2d6f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_f9a55038b6bc785e" hs_bindgen_f9a55038b6bc785e :: + 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:1953: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_f9a55038b6bc785e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_9fa9474781a69c3a" hs_bindgen_9fa9474781a69c3a :: + 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:1955: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_9fa9474781a69c3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_622a150a738c8c85" hs_bindgen_622a150a738c8c85 :: + 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:1957: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_622a150a738c8c85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_533bc257c70e639d" hs_bindgen_533bc257c70e639d :: + 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:1960: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_533bc257c70e639d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_85ae14270a4d2eac" hs_bindgen_85ae14270a4d2eac :: + 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:1968: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_85ae14270a4d2eac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_b66ac96639fb479c" hs_bindgen_b66ac96639fb479c :: + 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:1976: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_b66ac96639fb479c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_ae8d402693854cde" hs_bindgen_ae8d402693854cde :: + 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:1978: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_ae8d402693854cde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_ece8da57ed72cabc" hs_bindgen_ece8da57ed72cabc :: + 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:1979: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_ece8da57ed72cabc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_6c46995dee17e702" hs_bindgen_6c46995dee17e702 :: + 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:1987: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_6c46995dee17e702 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_9926fe258bdcf3af" hs_bindgen_9926fe258bdcf3af :: + 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:1992: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_9926fe258bdcf3af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_a964e203d9968eed" hs_bindgen_a964e203d9968eed :: + 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:1994: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_a964e203d9968eed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_4a35d25ecfc37fbe" hs_bindgen_4a35d25ecfc37fbe :: + 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:1997: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_4a35d25ecfc37fbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_92de9b688481316d" hs_bindgen_92de9b688481316d :: + 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:1999: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_92de9b688481316d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_b32c431a3e35ed95" hs_bindgen_b32c431a3e35ed95 :: + 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:2002: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_b32c431a3e35ed95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_3bb0c8f087df1d27" hs_bindgen_3bb0c8f087df1d27 :: + 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:2016: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_3bb0c8f087df1d27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_2f95246aba8da388" hs_bindgen_2f95246aba8da388 :: + 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:2021: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_2f95246aba8da388 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_1de4684527be1642" hs_bindgen_1de4684527be1642 :: + 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:2024: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_1de4684527be1642 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_24938898a491584a" hs_bindgen_24938898a491584a :: + 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:2029: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_24938898a491584a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_0a52f7c31a920de6" hs_bindgen_0a52f7c31a920de6 :: + 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:2033: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_0a52f7c31a920de6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_3c343bc1f452726b" hs_bindgen_3c343bc1f452726b :: + 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:2046: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_3c343bc1f452726b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_30f0ec6ba6787141" hs_bindgen_30f0ec6ba6787141 :: + 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:2051: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_30f0ec6ba6787141 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_079b6c6b4aa5e5f0" hs_bindgen_079b6c6b4aa5e5f0 :: + 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:2054: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_079b6c6b4aa5e5f0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_ddc921239ad07212" hs_bindgen_ddc921239ad07212 :: + 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:2059: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_ddc921239ad07212 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_f2ed9b73183c8e49" hs_bindgen_f2ed9b73183c8e49 :: + 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:2072: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_f2ed9b73183c8e49 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_526bd48310fae365" hs_bindgen_526bd48310fae365 :: + 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:2079: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_526bd48310fae365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_4c3644deeedaf60b" hs_bindgen_4c3644deeedaf60b :: + 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:2094: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_4c3644deeedaf60b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_0fa4cec97bf47715" hs_bindgen_0fa4cec97bf47715 :: + 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:2109: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_0fa4cec97bf47715 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_bacca9e37c8f0ddd" hs_bindgen_bacca9e37c8f0ddd :: + 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:2110: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_bacca9e37c8f0ddd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_1734c458666237d7" hs_bindgen_1734c458666237d7 :: + 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:2115: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_1734c458666237d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_147a3bf50ca31729" hs_bindgen_147a3bf50ca31729 :: + 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:2117: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_147a3bf50ca31729 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_242fc32d8acdbe65" hs_bindgen_242fc32d8acdbe65 :: + 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:2120: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_242fc32d8acdbe65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_985b2942c203227d" hs_bindgen_985b2942c203227d :: + 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:2121: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_985b2942c203227d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_dc342e2671babd96" hs_bindgen_dc342e2671babd96 :: + 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:2123: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_dc342e2671babd96 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_37f16ff76a3436bd" hs_bindgen_37f16ff76a3436bd :: + 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:2124: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_37f16ff76a3436bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_837609d1765eaabd" hs_bindgen_837609d1765eaabd :: + 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:2128: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_837609d1765eaabd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_3f038834ca45de54" hs_bindgen_3f038834ca45de54 :: + 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:2130: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_3f038834ca45de54 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_bc8b4311fc35e04c" hs_bindgen_bc8b4311fc35e04c :: + 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:2131: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_bc8b4311fc35e04c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_eb95e7af3406876c" hs_bindgen_eb95e7af3406876c :: + 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:2132: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_eb95e7af3406876c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_601ea5a332d37d2c" hs_bindgen_601ea5a332d37d2c :: + 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:2134: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_601ea5a332d37d2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_51aedd94aee53add" hs_bindgen_51aedd94aee53add :: + 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:2137: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_51aedd94aee53add + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_8e4c64db8e5fd50b" hs_bindgen_8e4c64db8e5fd50b :: + 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:2139: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_8e4c64db8e5fd50b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_c73386816fd4e2cf" hs_bindgen_c73386816fd4e2cf :: + 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:2143: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_c73386816fd4e2cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_75850d3a216bc246" hs_bindgen_75850d3a216bc246 :: + 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:2148: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_75850d3a216bc246 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_db8dc9e0b40ab099" hs_bindgen_db8dc9e0b40ab099 :: + 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:2151: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_db8dc9e0b40ab099 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_8f81b00ec7bf3a78" hs_bindgen_8f81b00ec7bf3a78 :: + 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:2154: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_8f81b00ec7bf3a78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_fe987cb0117ff363" hs_bindgen_fe987cb0117ff363 :: + 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:2170: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_fe987cb0117ff363 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_1874d7308eb0faa7" hs_bindgen_1874d7308eb0faa7 :: + 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:2176: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_1874d7308eb0faa7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_76940a9ea512048d" hs_bindgen_76940a9ea512048d :: + 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:2187: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_76940a9ea512048d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_83020da657a08e69" hs_bindgen_83020da657a08e69 :: + 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:2202: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_83020da657a08e69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_18ec96df8e26675e" hs_bindgen_18ec96df8e26675e :: + 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:2210: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_18ec96df8e26675e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_c354467ab4c0e067" hs_bindgen_c354467ab4c0e067 :: + 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:2212: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_c354467ab4c0e067 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_26e1f62c8396fead" hs_bindgen_26e1f62c8396fead :: + 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:2214: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_26e1f62c8396fead + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_d4be2db5a20e34a1" hs_bindgen_d4be2db5a20e34a1 :: + 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:2220: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_d4be2db5a20e34a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_695107a36677e674" hs_bindgen_695107a36677e674 :: + 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:2227: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_695107a36677e674 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_4980df5a49cdd807" hs_bindgen_4980df5a49cdd807 :: + 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:2245: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_4980df5a49cdd807 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_fb645ad5739f2209" hs_bindgen_fb645ad5739f2209 :: + 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:2254: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_fb645ad5739f2209 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_0f91ac65869d82a6" hs_bindgen_0f91ac65869d82a6 :: + 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:2262: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_0f91ac65869d82a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_620a97a1cdddedc0" hs_bindgen_620a97a1cdddedc0 :: + 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:2272: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_620a97a1cdddedc0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b78c2b16a493283d" hs_bindgen_b78c2b16a493283d :: + 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:2291: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_b78c2b16a493283d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_2fab01bdfcdbbdc6" hs_bindgen_2fab01bdfcdbbdc6 :: + 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:2298: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_2fab01bdfcdbbdc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_19165eb1f0c30701" hs_bindgen_19165eb1f0c30701 :: + 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:2304: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_19165eb1f0c30701 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_e569d859b55367d3" hs_bindgen_e569d859b55367d3 :: + 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:2310: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_e569d859b55367d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_26486a2d20ecd01b" hs_bindgen_26486a2d20ecd01b :: + 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:2323: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_26486a2d20ecd01b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_5937be6f7294f93d" hs_bindgen_5937be6f7294f93d :: + 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:2331: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_5937be6f7294f93d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_55338b5e2f8ee559" hs_bindgen_55338b5e2f8ee559 :: + 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:2340: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_55338b5e2f8ee559 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_5a03104aa2f98ef1" hs_bindgen_5a03104aa2f98ef1 :: + 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:2351: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_5a03104aa2f98ef1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_34d2d206dc549544" hs_bindgen_34d2d206dc549544 :: + 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:2362: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_34d2d206dc549544 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_8a70da78edc94a81" hs_bindgen_8a70da78edc94a81 :: + 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:2369: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_8a70da78edc94a81 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_6f057fb2597fcf78" hs_bindgen_6f057fb2597fcf78 :: + 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:2372: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_6f057fb2597fcf78 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_1c12dd84d5a8b6d3" hs_bindgen_1c12dd84d5a8b6d3 :: + 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:2375: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_1c12dd84d5a8b6d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_fafe4d50158e27ce" hs_bindgen_fafe4d50158e27ce :: + 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:2387: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_fafe4d50158e27ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_f83cf18f11cddcb9" hs_bindgen_f83cf18f11cddcb9 :: + 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:2395: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_f83cf18f11cddcb9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_cbfe32396926240b" hs_bindgen_cbfe32396926240b :: + 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:2410: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_cbfe32396926240b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_7652de1b8cbd5b21" hs_bindgen_7652de1b8cbd5b21 :: + 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:2429: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_7652de1b8cbd5b21 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_5bc55206baeaf254" hs_bindgen_5bc55206baeaf254 :: + 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:2445: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_5bc55206baeaf254 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_94248d9a57f2e216" hs_bindgen_94248d9a57f2e216 :: + 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:2472: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_94248d9a57f2e216 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_692a89ac00f16fc4" hs_bindgen_692a89ac00f16fc4 :: + 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:2490: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_692a89ac00f16fc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_10f1931af033408a" hs_bindgen_10f1931af033408a :: + 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:2511: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_10f1931af033408a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_a313b599318592d2" hs_bindgen_a313b599318592d2 :: + 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:2532: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_a313b599318592d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_d644b1577a10e1d5" hs_bindgen_d644b1577a10e1d5 :: + 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:2557: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_d644b1577a10e1d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_a87e08913f8ae120" hs_bindgen_a87e08913f8ae120 :: + 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:2565: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_a87e08913f8ae120 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_9ff386a40d1e3a51" hs_bindgen_9ff386a40d1e3a51 :: + 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:2575: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_9ff386a40d1e3a51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_8877c4bfe73e4ca9" hs_bindgen_8877c4bfe73e4ca9 :: + 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:2586: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_8877c4bfe73e4ca9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_2c9b5c239998b414" hs_bindgen_2c9b5c239998b414 :: + 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:2598: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_2c9b5c239998b414 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_b54fb50e8a431165" hs_bindgen_b54fb50e8a431165 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2605: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_b54fb50e8a431165 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_1849ad27d0562368" hs_bindgen_1849ad27d0562368 :: + 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:2619: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_1849ad27d0562368 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_522a6f1a9e99a743" hs_bindgen_522a6f1a9e99a743 :: + IO (Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_crypto_backend_state_destroy #-} + +{-| Frees all resouces 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:2631: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_522a6f1a9e99a743 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_d47bfa5a5f9070b9" hs_bindgen_d47bfa5a5f9070b9 :: + 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:2642: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_d47bfa5a5f9070b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_e36aad3831eb530e" hs_bindgen_e36aad3831eb530e :: + 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:2654: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_e36aad3831eb530e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_213cfe4647123ac3" hs_bindgen_213cfe4647123ac3 :: + 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:2661: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_213cfe4647123ac3 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/Safe.hs new file mode 100644 index 00000000..811e81e0 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/Safe.hs @@ -0,0 +1,14911 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_9_0.Safe where + +import Botan.Bindings.Generated.Botan_3_9_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_226ec8ece9344769 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_e2a96e2415aae8b6 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_0f9fc34db44b66d7 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_9eaaa3363b41a768 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_d625bb1f141fc008 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_1871fa1b7316fe02 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_91ccc9078c7dc97e (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_51b51ef954194749 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_0bbd3c0fb4270ec7 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_1bf7d690cf907cce (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ac29c5fc2b3b6ccc (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e3715d2d7f75be7f (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_82f55501c7dcbd25 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c0be285e56a9d0b8 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_64921c97c060e5cd (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_edc55e3fab2dc9ee (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b886551a7c634c48 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_76779967e0dcbd85 (" + , " 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_e37da3b62ed6e125 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb64920e2fd4e94b (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9abfc3fa74bbca68 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d20432cea78c8d7e (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_242157f4a8e7c515 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c482ea67644cd76 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a22f7b184ecd059a (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5b02692ad5598202 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa3da5eeddee2131 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_30cd46c6122402d5 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9cb7b72fb61a56c5 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e321d05cce02ddc2 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f50f565062eecd01 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_746fa9a35ee980c6 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a2d71e76000def74 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2acb17adf41e7fd5 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_488d8bc3a88dd4c8 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf6b295cdbe19728 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7c584a589ed790cf (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_87dc9745a14a3ce2 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_45f6725aee455584 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_973ede541f6e2e65 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_dce4d3d9ab2e3f07 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_868fc55e6c9fd727 (" + , " 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_5fbce5141c113e1a (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3d86d8aa978c2fe9 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cdfcb9394d75577a (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ebfcc59d9e46ccf2 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e55dea1e9ec68cc4 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a2bd2a4750005f85 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_971e273a2d38ed2b (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_c791c2aa75f5e548 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_9e4c83a3edf3b2cd (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2cf87493648c7519 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f15d679bde8909f (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3c2cdfbbaf94fcac (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cfffb4e25959efa0 (" + , " 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_e103b561aba60834 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c70ad247f089dd5c (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_60267df1826a9e74 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d553590e74287219 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aff4e86e632385f1 (" + , " 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_c8472ed8c1935f16 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_85b0b5f8aa97bf92 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f3cefc4a4dc10b3e (" + , " 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_98ffbdea0fd27040 (" + , " 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_c34270c686c6911e (" + , " 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_f724daa2b8f76c7a (" + , " 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_cb6d4b332ecc08d6 (" + , " 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_224249fb295987a9 (" + , " 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_417528657f819826 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2d1899de54f6edaf (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f19855d4d4621d95 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_5ec7e58aac480b31 (" + , " 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_6379f35db5c2688c (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_d6feb9a8de69b956 (" + , " 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_d226139cadfd7ff9 (" + , " 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_6732bb4ec12b913e (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4e86a2752bd06147 (" + , " 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_99caab097a3972b9 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_73d3fd62dcff9009 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_97981036cf2d035e (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45733b91435d17e0 (" + , " 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_5f7a525b60f9c174 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_4d1e986586f4cb1d (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b7443a742e5fd678 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0cf4827e5febdd2b (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d9d3d00ed2eeeaad (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4e5827aa0e1807fc (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_862b9a3cc8b086c1 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9f1cfe85b01c6e0a (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7547dad5ea847e29 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d6860a6efb4c2363 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e4e588dc49942dd1 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_b1c6a9a61d494d82 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_c57781108a654e19 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_56d73d59b6542959 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_d280968e82a101d6 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_165adaf8b1dea977 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_dcc33558f76fbdeb (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_96303f60f9443174 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f476022acd47c034 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c2009dd6a1010a2d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8f532fbcfb06e851 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_257277b65626f1e9 (" + , " 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_d135a601c3072e30 (" + , " 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_8d76bf0bedff61d3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ea8a8853f72698d9 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8044cf2a76a70cbd (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6ef371d2084d8cd9 (" + , " 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_50ec0172b550e727 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e4788baaa4f4abb (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2649cc5cfdd69453 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b57e94e948b54b5f (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1b65a6cb8659b04c (" + , " 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_8e82fd085f2eb5e1 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f23223871f51261f (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6247a11102b10104 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bb26e5968dbe4a13 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9f9c7964a000582b (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5a8ea7c24f9d3500 (" + , " 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_75b0c8f2f3f4d72b (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff33b7ff1285ae90 (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dc4749c678c6734b (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_06a166fa9dad75d6 (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4965981522c5d4fc (" + , " 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_4cef00e7d1d609f4 (" + , " 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_ff51ab8b57cf86c5 (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5de9b876bd12b31d (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50b7f684668e6f1a (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3c28396c33b6879a (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_47a35a566452c6c0 (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0288b62fb9c16acd (" + , " 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_84441fe961efca4e (" + , " 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_7818e9d3856c2f1d (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8f244446f4144d9f (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d37fa518952ae3b9 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f49e596a44476e35 (" + , " 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_83c4dac87c776a3c (" + , " 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_5c9b4d569bf88bd2 (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ed2aa3c689fa499a (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2fb1cd2e23966421 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2db8d2173bb8dad9 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b0249d45336d9860 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f2d51de9c8ca900 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a9b99f51b9d63623 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45e9177874fd247a (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0edaf447def5818e (" + , " 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_dcd6d224cecd558c (" + , " 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_2b6c2347cc5f5163 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b0431b85723cc34e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82cce6ccca4ccdd4 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bfbe42a1518881dc (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47b4e8670d60e1b3 (" + , " 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_d751d262c50b9bdb (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_21607e8e916440da (" + , " 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_f30c35a21a1a040b (" + , " 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_a0fd221d488c260b (" + , " 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_00ed003de2905288 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5f73de1fcf9560d3 (" + , " 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_c3f9b37eda00f4d1 (" + , " 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_8f580d5b19398f68 (" + , " 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_2b555695098dc333 (" + , " 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_7dd06f03fd3373ee (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7442272a1dbd7aa1 (" + , " 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_261cd2f2939418bf (" + , " 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_9dbc0d90f5da7ce5 (" + , " 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_9912007d0531e11f (" + , " 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_47f4bfcc63d345a5 (" + , " 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_86755334cf5f3cc3 (" + , " 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_e96000b8d1f42d9b (" + , " 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_a894abef6c8fc72e (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b6648f274a9dd554 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_31598f8bbd1f652d (" + , " 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_161dcadb959bb689 (" + , " 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_0c361c196f2cc624 (" + , " 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_bce56e13c0887233 (" + , " 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_232f1d8f2dd24994 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_66b6664163f83684 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_399b82550cc04cd2 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1f233c0e6c7f783c (" + , " 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_99ff3f406456a017 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e303bd9426aaa5c8 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a13f7767ecc92103 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a10317b810732ba4 (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_87419d1d20e2d3d0 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1887ddc6c391acfb (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b08447bbc61035f7 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_769c209f50080ab7 (" + , " 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_1ecb79b04603daef (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd21114ceb9e3b33 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_affbd6180d2816d8 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c817c055f1de569d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2637dc521b2626d5 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7df9e77d36190212 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2868bf7397b7caaa (" + , " 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_1101f46101855c01 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_582a60ea7a75e85e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_17bd126410da998a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a30a3ad9dd74cab (" + , " 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_93686acd11afe1cb (" + , " 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_afd6148c0344e7ad (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fbc41115e67ae356 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5ba0a81f6c7b7b43 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40288b59089b466a (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f5cb5e4b75613a5e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8c2d1bf3881b3bbe (" + , " 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_226f3dae39e71fa0 (" + , " 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_16d253c3a69c3db5 (" + , " 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_39b2a2a6d57f2a6a (" + , " 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_7e149a5d6646f064 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e3ed9fddd24264f (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_82379774e651e0e6 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98a88d50f4a5b867 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_295880cb3b6417f9 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dcdb703584b0103e (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_319b6b29687178ff (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fba44bc1eed0a372 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6b8588032fa7c580 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2197fd3f545a831 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a927f41c3e815936 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5bcc07542683dd18 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a4bcd01d79a8b2d1 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4af0f19d5b338f5c (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dcb4cfb9d0aa1e5d (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6223dfe5f6762b76 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f95782bb555b1dc (" + , " 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_4598faaa5b810ac6 (" + , " 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_fedab4963f87e6b6 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1b97775531f70781 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ca7714307ec130a5 (" + , " 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_8d4a859c1723bd4d (" + , " 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_76679b49d96c13b5 (" + , " 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_63301443c25583eb (" + , " 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_af3712d738963fb9 (" + , " 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_d46b3977b521e1ea (" + , " 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_6677bf1d1b7ee51a (" + , " 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_dca4a6b5ff453eb0 (" + , " 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_ef734a90d29def45 (" + , " 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_20f151e8c413a642 (" + , " 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_39c3155fc0b86f0e (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_4e7db9756476a006 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_82687b2e8f0373bf (" + , " 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_ba483413174eeb4d (" + , " 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_339f66fcbd1898fa (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_21027a8c825c1036 (" + , " 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_6d7597dfc85dcdd7 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_86f8b09802296247 (" + , " 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_df2568a4a68a03f6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ccedc714baf20bc (" + , " 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_9d412a7aaa563d51 (" + , " 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_081f16057aa35941 (" + , " 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_bc5914f80c43f468 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cb44631614da72bb (" + , " 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_92efce19af465aef (" + , " 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_6f71dc15bdca15f5 (" + , " 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_a7cd1fc6f9174c27 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5f908a916fd0c9a2 (" + , " 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_09fa02138cdf1aff (" + , " 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_d49c882163a8bead (" + , " 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_ee34c2d1a6ebd3c1 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5868ad1ad0d82d55 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_282c3eb759b6602f (" + , " 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_12b494ee80a45f89 (" + , " 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_00f953f090fd588d (" + , " 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_070224579fb1e2de (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6220e7b1b351ec1d (" + , " 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_7cab81537cbfec11 (" + , " 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_11a63a568df86912 (" + , " 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_55091f43a9c30c53 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_41f2a47bece91b79 (" + , " 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_85388ff7ba268bb7 (" + , " 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_44f52319bd4f90e9 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3d93302c6f0e36c (" + , " 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_61e035f841539a69 (" + , " 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_a6a1c81b4168fd22 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7ce30cf5ae386f60 (" + , " 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_65cf979f6422a73e (" + , " 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_5dce310d7abaad45 (" + , " 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_7741dd922261b6d0 (" + , " 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_8c22d5c6419ce539 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f641e6b4292aba06 (" + , " 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_a5fcd35e55d69506 (" + , " 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_51b1bb13f2e138b7 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0d54442bcf6134f3 (" + , " 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_9ed854fdfd954cf4 (" + , " 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_e744fdd8c0952945 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4129f53d4f14e323 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ff91a2c2029132d (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_12f77fd7e9fe36d7 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c5f925a43e4ea08b (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bab85e4c73114167 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3a0f9a44b1e29ae5 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7a21a12e0c722879 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0a8bd1771ca54bea (" + , " 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_dca499e547b2e015 (" + , " 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_1f88e16f8ccc4667 (" + , " 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_94ba191a9097a124 (" + , " 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_fd47b63dba5c02aa (" + , " 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_a2a14a87c63938b1 (" + , " 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_4468cbc01d570f40 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ee850a382bb4178e (" + , " 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_5a4dd33ef541898c (" + , " 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_77a4d22596853e6c (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dd5c6314c9460d6a (" + , " 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_64377ab8f05d2576 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ac195f2d284bd8f2 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_50d3c76885ea2b0e (" + , " 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_31ff0f87e579856c (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_0a88e97b4142ff30 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f798792ae8420762 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5dc8c402551df40 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8fb4084183bdce07 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3deec8f0342d420 (" + , " 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_c780f9553e847fa6 (" + , " 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_e62f182b4396af8f (" + , " 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_7f047a5c6f32b731 (" + , " 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_32c2e159d7d2a830 (" + , " 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_f3d419aaf535eec6 (" + , " 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_f53bd8d0e1ddce2b (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5ddefac2ab5e2616 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_87b3082b1d206608 (" + , " 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_c0ecdd42fd4f4c63 (" + , " 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_3eba6433c31ff85e (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b55814784b547b9c (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_192e378b28c815dd (" + , " 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_e8832d73054e0590 (" + , " 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_567c3bde29740925 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_584cb4e0a8d35c3a (" + , " 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_69a903833c13240d (" + , " 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_89e0d5b985f16807 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_e1d484d5900ba088 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5478c8076ac226e2 (" + , " 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_2992a136c01038ce (" + , " 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_d29190273777e72e (" + , " 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_1c7333c1662721e3 (" + , " 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_ff3087b1bf2d0b64 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fe438c2c2e29c705 (" + , " 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_60461bd5dc07f7dd (" + , " 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_51f8e416f15f1b14 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_df4109806e892fcc (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bdf8200c906088fd (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40f906b06c834b66 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_58c626c47cff6cc7 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0c36cb5c423170c2 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_666294986c1ebb3a (" + , " 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_1203c60af10897e1 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f9cb5cc3ff474e43 (" + , " 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_5badde6119acbaaa (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_85de6dfc631d7466 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_226ec8ece9344769" hs_bindgen_226ec8ece9344769 :: + 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_226ec8ece9344769 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_e2a96e2415aae8b6" hs_bindgen_e2a96e2415aae8b6 :: + 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_e2a96e2415aae8b6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_0f9fc34db44b66d7" hs_bindgen_0f9fc34db44b66d7 :: + 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_0f9fc34db44b66d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_9eaaa3363b41a768" hs_bindgen_9eaaa3363b41a768 :: + 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_9eaaa3363b41a768 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_d625bb1f141fc008" hs_bindgen_d625bb1f141fc008 :: + 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_d625bb1f141fc008 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_1871fa1b7316fe02" hs_bindgen_1871fa1b7316fe02 :: + 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_1871fa1b7316fe02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_91ccc9078c7dc97e" hs_bindgen_91ccc9078c7dc97e :: + 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_91ccc9078c7dc97e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_51b51ef954194749" hs_bindgen_51b51ef954194749 :: + 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_51b51ef954194749 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_0bbd3c0fb4270ec7" hs_bindgen_0bbd3c0fb4270ec7 :: + 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_0bbd3c0fb4270ec7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_1bf7d690cf907cce" hs_bindgen_1bf7d690cf907cce :: + 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_1bf7d690cf907cce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_ac29c5fc2b3b6ccc" hs_bindgen_ac29c5fc2b3b6ccc :: + 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_ac29c5fc2b3b6ccc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_e3715d2d7f75be7f" hs_bindgen_e3715d2d7f75be7f :: + 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_e3715d2d7f75be7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_82f55501c7dcbd25" hs_bindgen_82f55501c7dcbd25 :: + 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_82f55501c7dcbd25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_c0be285e56a9d0b8" hs_bindgen_c0be285e56a9d0b8 :: + 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_c0be285e56a9d0b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_64921c97c060e5cd" hs_bindgen_64921c97c060e5cd :: + 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_64921c97c060e5cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_edc55e3fab2dc9ee" hs_bindgen_edc55e3fab2dc9ee :: + 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_edc55e3fab2dc9ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_b886551a7c634c48" hs_bindgen_b886551a7c634c48 :: + 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_b886551a7c634c48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_76779967e0dcbd85" hs_bindgen_76779967e0dcbd85 :: + 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_76779967e0dcbd85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_e37da3b62ed6e125" hs_bindgen_e37da3b62ed6e125 :: + 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_e37da3b62ed6e125 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_eb64920e2fd4e94b" hs_bindgen_eb64920e2fd4e94b :: + 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_eb64920e2fd4e94b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_9abfc3fa74bbca68" hs_bindgen_9abfc3fa74bbca68 :: + 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_9abfc3fa74bbca68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_d20432cea78c8d7e" hs_bindgen_d20432cea78c8d7e :: + 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_d20432cea78c8d7e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_242157f4a8e7c515" hs_bindgen_242157f4a8e7c515 :: + 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_242157f4a8e7c515 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_2c482ea67644cd76" hs_bindgen_2c482ea67644cd76 :: + 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_2c482ea67644cd76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_a22f7b184ecd059a" hs_bindgen_a22f7b184ecd059a :: + 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_a22f7b184ecd059a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_5b02692ad5598202" hs_bindgen_5b02692ad5598202 :: + 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_5b02692ad5598202 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_aa3da5eeddee2131" hs_bindgen_aa3da5eeddee2131 :: + 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_aa3da5eeddee2131 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_30cd46c6122402d5" hs_bindgen_30cd46c6122402d5 :: + 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_30cd46c6122402d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_9cb7b72fb61a56c5" hs_bindgen_9cb7b72fb61a56c5 :: + 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_9cb7b72fb61a56c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_e321d05cce02ddc2" hs_bindgen_e321d05cce02ddc2 :: + 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_e321d05cce02ddc2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_f50f565062eecd01" hs_bindgen_f50f565062eecd01 :: + 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_f50f565062eecd01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_746fa9a35ee980c6" hs_bindgen_746fa9a35ee980c6 :: + 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_746fa9a35ee980c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_a2d71e76000def74" hs_bindgen_a2d71e76000def74 :: + 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_a2d71e76000def74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_2acb17adf41e7fd5" hs_bindgen_2acb17adf41e7fd5 :: + 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_2acb17adf41e7fd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_488d8bc3a88dd4c8" hs_bindgen_488d8bc3a88dd4c8 :: + 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_488d8bc3a88dd4c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_cf6b295cdbe19728" hs_bindgen_cf6b295cdbe19728 :: + 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_cf6b295cdbe19728 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_7c584a589ed790cf" hs_bindgen_7c584a589ed790cf :: + 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_7c584a589ed790cf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_87dc9745a14a3ce2" hs_bindgen_87dc9745a14a3ce2 :: + 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_87dc9745a14a3ce2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_45f6725aee455584" hs_bindgen_45f6725aee455584 :: + 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_45f6725aee455584 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_973ede541f6e2e65" hs_bindgen_973ede541f6e2e65 :: + 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_973ede541f6e2e65 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_dce4d3d9ab2e3f07" hs_bindgen_dce4d3d9ab2e3f07 :: + 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_dce4d3d9ab2e3f07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_868fc55e6c9fd727" hs_bindgen_868fc55e6c9fd727 :: + 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_868fc55e6c9fd727 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_5fbce5141c113e1a" hs_bindgen_5fbce5141c113e1a :: + 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_5fbce5141c113e1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_3d86d8aa978c2fe9" hs_bindgen_3d86d8aa978c2fe9 :: + 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_3d86d8aa978c2fe9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_cdfcb9394d75577a" hs_bindgen_cdfcb9394d75577a :: + 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_cdfcb9394d75577a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_ebfcc59d9e46ccf2" hs_bindgen_ebfcc59d9e46ccf2 :: + 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_ebfcc59d9e46ccf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_e55dea1e9ec68cc4" hs_bindgen_e55dea1e9ec68cc4 :: + 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_e55dea1e9ec68cc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_a2bd2a4750005f85" hs_bindgen_a2bd2a4750005f85 :: + 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_a2bd2a4750005f85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_971e273a2d38ed2b" hs_bindgen_971e273a2d38ed2b :: + 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_971e273a2d38ed2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_c791c2aa75f5e548" hs_bindgen_c791c2aa75f5e548 :: + 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_c791c2aa75f5e548 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_9e4c83a3edf3b2cd" hs_bindgen_9e4c83a3edf3b2cd :: + 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_9e4c83a3edf3b2cd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_2cf87493648c7519" hs_bindgen_2cf87493648c7519 :: + 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_2cf87493648c7519 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_7f15d679bde8909f" hs_bindgen_7f15d679bde8909f :: + 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_7f15d679bde8909f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_3c2cdfbbaf94fcac" hs_bindgen_3c2cdfbbaf94fcac :: + 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_3c2cdfbbaf94fcac + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_cfffb4e25959efa0" hs_bindgen_cfffb4e25959efa0 :: + 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_cfffb4e25959efa0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_e103b561aba60834" hs_bindgen_e103b561aba60834 :: + 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_e103b561aba60834 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_c70ad247f089dd5c" hs_bindgen_c70ad247f089dd5c :: + 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_c70ad247f089dd5c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_60267df1826a9e74" hs_bindgen_60267df1826a9e74 :: + 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_60267df1826a9e74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_d553590e74287219" hs_bindgen_d553590e74287219 :: + 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_d553590e74287219 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_aff4e86e632385f1" hs_bindgen_aff4e86e632385f1 :: + 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_aff4e86e632385f1 + +{-| + + 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_aff4e86e632385f1 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_c8472ed8c1935f16" hs_bindgen_c8472ed8c1935f16 :: + 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_c8472ed8c1935f16 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_85b0b5f8aa97bf92" hs_bindgen_85b0b5f8aa97bf92 :: + 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_85b0b5f8aa97bf92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_f3cefc4a4dc10b3e" hs_bindgen_f3cefc4a4dc10b3e :: + 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_f3cefc4a4dc10b3e + +{-| __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_f3cefc4a4dc10b3e x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_98ffbdea0fd27040" hs_bindgen_98ffbdea0fd27040 :: + 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_98ffbdea0fd27040 + +{-| 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_98ffbdea0fd27040 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_c34270c686c6911e" hs_bindgen_c34270c686c6911e :: + 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_c34270c686c6911e + +{-| __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_c34270c686c6911e x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_f724daa2b8f76c7a" hs_bindgen_f724daa2b8f76c7a :: + 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_f724daa2b8f76c7a + +{-| __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_f724daa2b8f76c7a x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_cb6d4b332ecc08d6" hs_bindgen_cb6d4b332ecc08d6 :: + 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_cb6d4b332ecc08d6 + +{-| 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_cb6d4b332ecc08d6 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_224249fb295987a9" hs_bindgen_224249fb295987a9 :: + 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_224249fb295987a9 + +{-| 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_224249fb295987a9 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_9_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_417528657f819826" hs_bindgen_417528657f819826 :: + 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_417528657f819826 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_2d1899de54f6edaf" hs_bindgen_2d1899de54f6edaf :: + 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_2d1899de54f6edaf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_f19855d4d4621d95" hs_bindgen_f19855d4d4621d95 :: + 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_f19855d4d4621d95 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_5ec7e58aac480b31" hs_bindgen_5ec7e58aac480b31 :: + 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_5ec7e58aac480b31 + +{-| 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_5ec7e58aac480b31 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_6379f35db5c2688c" hs_bindgen_6379f35db5c2688c :: + 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_6379f35db5c2688c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_d6feb9a8de69b956" hs_bindgen_d6feb9a8de69b956 :: + 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_d6feb9a8de69b956 + +{-| 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_d6feb9a8de69b956 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_d226139cadfd7ff9" hs_bindgen_d226139cadfd7ff9 :: + 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_d226139cadfd7ff9 + +{-| 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_d226139cadfd7ff9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_6732bb4ec12b913e" hs_bindgen_6732bb4ec12b913e :: + 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_6732bb4ec12b913e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_4e86a2752bd06147" hs_bindgen_4e86a2752bd06147 :: + 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_4e86a2752bd06147 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_99caab097a3972b9" hs_bindgen_99caab097a3972b9 :: + 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_99caab097a3972b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_73d3fd62dcff9009" hs_bindgen_73d3fd62dcff9009 :: + 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_73d3fd62dcff9009 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_97981036cf2d035e" hs_bindgen_97981036cf2d035e :: + 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:937: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_97981036cf2d035e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_45733b91435d17e0" hs_bindgen_45733b91435d17e0 :: + 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:942:28@ + +__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_45733b91435d17e0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_5f7a525b60f9c174" hs_bindgen_5f7a525b60f9c174 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:947:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_5f7a525b60f9c174 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_4d1e986586f4cb1d" hs_bindgen_4d1e986586f4cb1d :: + 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:952: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_4d1e986586f4cb1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_b7443a742e5fd678" hs_bindgen_b7443a742e5fd678 :: + 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:957: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_b7443a742e5fd678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_0cf4827e5febdd2b" hs_bindgen_0cf4827e5febdd2b :: + 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:962: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_0cf4827e5febdd2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_d9d3d00ed2eeeaad" hs_bindgen_d9d3d00ed2eeeaad :: + 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:968: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_d9d3d00ed2eeeaad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_4e5827aa0e1807fc" hs_bindgen_4e5827aa0e1807fc :: + 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:973: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_4e5827aa0e1807fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_862b9a3cc8b086c1" hs_bindgen_862b9a3cc8b086c1 :: + 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:978: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_862b9a3cc8b086c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_9f1cfe85b01c6e0a" hs_bindgen_9f1cfe85b01c6e0a :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:983: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_9f1cfe85b01c6e0a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_7547dad5ea847e29" hs_bindgen_7547dad5ea847e29 :: + 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_7547dad5ea847e29 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:988: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_7547dad5ea847e29 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_d6860a6efb4c2363" hs_bindgen_d6860a6efb4c2363 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:993: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_d6860a6efb4c2363 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_e4e588dc49942dd1" hs_bindgen_e4e588dc49942dd1 :: + 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:1000: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_e4e588dc49942dd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_b1c6a9a61d494d82" hs_bindgen_b1c6a9a61d494d82 :: + 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:1005: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_b1c6a9a61d494d82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_c57781108a654e19" hs_bindgen_c57781108a654e19 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1007: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_c57781108a654e19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_56d73d59b6542959" hs_bindgen_56d73d59b6542959 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1009: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_56d73d59b6542959 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_d280968e82a101d6" hs_bindgen_d280968e82a101d6 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1011: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_d280968e82a101d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_165adaf8b1dea977" hs_bindgen_165adaf8b1dea977 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1012: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_165adaf8b1dea977 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_dcc33558f76fbdeb" hs_bindgen_dcc33558f76fbdeb :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1014: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_dcc33558f76fbdeb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_96303f60f9443174" hs_bindgen_96303f60f9443174 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1015: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_96303f60f9443174 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_f476022acd47c034" hs_bindgen_f476022acd47c034 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1017: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_f476022acd47c034 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_c2009dd6a1010a2d" hs_bindgen_c2009dd6a1010a2d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1018: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_c2009dd6a1010a2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_8f532fbcfb06e851" hs_bindgen_8f532fbcfb06e851 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1019: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_8f532fbcfb06e851 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_257277b65626f1e9" hs_bindgen_257277b65626f1e9 :: + 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:1022: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_257277b65626f1e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_d135a601c3072e30" hs_bindgen_d135a601c3072e30 :: + 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:1025: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_d135a601c3072e30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_8d76bf0bedff61d3" hs_bindgen_8d76bf0bedff61d3 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1032: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_8d76bf0bedff61d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_ea8a8853f72698d9" hs_bindgen_ea8a8853f72698d9 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1039: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_ea8a8853f72698d9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_8044cf2a76a70cbd" hs_bindgen_8044cf2a76a70cbd :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1044: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_8044cf2a76a70cbd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_6ef371d2084d8cd9" hs_bindgen_6ef371d2084d8cd9 :: + 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:1048: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_6ef371d2084d8cd9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_50ec0172b550e727" hs_bindgen_50ec0172b550e727 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1050: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_50ec0172b550e727 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_0e4788baaa4f4abb" hs_bindgen_0e4788baaa4f4abb :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1051: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_0e4788baaa4f4abb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_2649cc5cfdd69453" hs_bindgen_2649cc5cfdd69453 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1053: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_2649cc5cfdd69453 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_b57e94e948b54b5f" hs_bindgen_b57e94e948b54b5f :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1055: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_b57e94e948b54b5f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_1b65a6cb8659b04c" hs_bindgen_1b65a6cb8659b04c :: + 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:1058: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_1b65a6cb8659b04c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_8e82fd085f2eb5e1" hs_bindgen_8e82fd085f2eb5e1 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1060: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_8e82fd085f2eb5e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_f23223871f51261f" hs_bindgen_f23223871f51261f :: + 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:1067: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_f23223871f51261f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_6247a11102b10104" hs_bindgen_6247a11102b10104 :: + 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:1074: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_6247a11102b10104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_bb26e5968dbe4a13" hs_bindgen_bb26e5968dbe4a13 :: + 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:1079: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_bb26e5968dbe4a13 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_9f9c7964a000582b" hs_bindgen_9f9c7964a000582b :: + 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:1084: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_9f9c7964a000582b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_5a8ea7c24f9d3500" hs_bindgen_5a8ea7c24f9d3500 :: + 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:1104: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_5a8ea7c24f9d3500 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_75b0c8f2f3f4d72b" hs_bindgen_75b0c8f2f3f4d72b :: + 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:1115: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_75b0c8f2f3f4d72b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_destroy@ +foreign import ccall safe "hs_bindgen_ff33b7ff1285ae90" hs_bindgen_ff33b7ff1285ae90 :: + 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:1126:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_ff33b7ff1285ae90 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_from_string@ +foreign import ccall safe "hs_bindgen_dc4749c678c6734b" hs_bindgen_dc4749c678c6734b :: + 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)/__]: hanlder 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:1134:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: hanlder 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_dc4749c678c6734b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_register@ +foreign import ccall safe "hs_bindgen_06a166fa9dad75d6" hs_bindgen_06a166fa9dad75d6 :: + 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:1140: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_06a166fa9dad75d6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_view_string@ +foreign import ccall safe "hs_bindgen_4965981522c5d4fc" hs_bindgen_4965981522c5d4fc :: + 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:1145: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_4965981522c5d4fc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_view_name@ +foreign import ccall safe "hs_bindgen_4cef00e7d1d609f4" hs_bindgen_4cef00e7d1d609f4 :: + 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:1150: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_4cef00e7d1d609f4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_equal@ +foreign import ccall safe "hs_bindgen_ff51ab8b57cf86c5" hs_bindgen_ff51ab8b57cf86c5 :: + 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:1157: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_ff51ab8b57cf86c5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_oid_cmp@ +foreign import ccall safe "hs_bindgen_5de9b876bd12b31d" hs_bindgen_5de9b876bd12b31d :: + 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:1164: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_5de9b876bd12b31d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_destroy@ +foreign import ccall safe "hs_bindgen_50b7f684668e6f1a" hs_bindgen_50b7f684668e6f1a :: + 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:1175: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_50b7f684668e6f1a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_supports_application_specific_group@ +foreign import ccall safe "hs_bindgen_3c28396c33b6879a" hs_bindgen_3c28396c33b6879a :: + 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:1182: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_3c28396c33b6879a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_supports_named_group@ +foreign import ccall safe "hs_bindgen_47a35a566452c6c0" hs_bindgen_47a35a566452c6c0 :: + 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:1189: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_47a35a566452c6c0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_from_params@ +foreign import ccall safe "hs_bindgen_0288b62fb9c16acd" hs_bindgen_0288b62fb9c16acd :: + 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:1205: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_0288b62fb9c16acd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_from_ber@ +foreign import ccall safe "hs_bindgen_84441fe961efca4e" hs_bindgen_84441fe961efca4e :: + 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:1221: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_84441fe961efca4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_from_pem@ +foreign import ccall safe "hs_bindgen_7818e9d3856c2f1d" hs_bindgen_7818e9d3856c2f1d :: + 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:1229: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_7818e9d3856c2f1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_from_oid@ +foreign import ccall safe "hs_bindgen_8f244446f4144d9f" hs_bindgen_8f244446f4144d9f :: + 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:1237: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_8f244446f4144d9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_from_name@ +foreign import ccall safe "hs_bindgen_d37fa518952ae3b9" hs_bindgen_d37fa518952ae3b9 :: + 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:1245: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_d37fa518952ae3b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_view_der@ +foreign import ccall safe "hs_bindgen_f49e596a44476e35" hs_bindgen_f49e596a44476e35 :: + 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:1251: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_f49e596a44476e35 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_view_pem@ +foreign import ccall safe "hs_bindgen_83c4dac87c776a3c" hs_bindgen_83c4dac87c776a3c :: + 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:1257: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_83c4dac87c776a3c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_curve_oid@ +foreign import ccall safe "hs_bindgen_5c9b4d569bf88bd2" hs_bindgen_5c9b4d569bf88bd2 :: + 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:1262: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_5c9b4d569bf88bd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_p@ +foreign import ccall safe "hs_bindgen_ed2aa3c689fa499a" hs_bindgen_ed2aa3c689fa499a :: + 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:1267: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_ed2aa3c689fa499a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_a@ +foreign import ccall safe "hs_bindgen_2fb1cd2e23966421" hs_bindgen_2fb1cd2e23966421 :: + 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:1272: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_2fb1cd2e23966421 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_b@ +foreign import ccall safe "hs_bindgen_2db8d2173bb8dad9" hs_bindgen_2db8d2173bb8dad9 :: + 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:1277: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_2db8d2173bb8dad9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_g_x@ +foreign import ccall safe "hs_bindgen_b0249d45336d9860" hs_bindgen_b0249d45336d9860 :: + 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:1282: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_b0249d45336d9860 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_g_y@ +foreign import ccall safe "hs_bindgen_5f2d51de9c8ca900" hs_bindgen_5f2d51de9c8ca900 :: + 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:1287: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_5f2d51de9c8ca900 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_get_order@ +foreign import ccall safe "hs_bindgen_a9b99f51b9d63623" hs_bindgen_a9b99f51b9d63623 :: + 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:1292: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_a9b99f51b9d63623 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_group_equal@ +foreign import ccall safe "hs_bindgen_45e9177874fd247a" hs_bindgen_45e9177874fd247a :: + 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:1299: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_45e9177874fd247a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_0edaf447def5818e" hs_bindgen_0edaf447def5818e :: + 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:1315: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_0edaf447def5818e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_ec_privkey_create@ +foreign import ccall safe "hs_bindgen_dcd6d224cecd558c" hs_bindgen_dcd6d224cecd558c :: + 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:1325: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_dcd6d224cecd558c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_2b6c2347cc5f5163" hs_bindgen_2b6c2347cc5f5163 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1329: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_2b6c2347cc5f5163 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_b0431b85723cc34e" hs_bindgen_b0431b85723cc34e :: + 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:1332: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_b0431b85723cc34e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_82cce6ccca4ccdd4" hs_bindgen_82cce6ccca4ccdd4 :: + 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:1334: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_82cce6ccca4ccdd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_bfbe42a1518881dc" hs_bindgen_bfbe42a1518881dc :: + 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:1336: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_bfbe42a1518881dc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_47b4e8670d60e1b3" hs_bindgen_47b4e8670d60e1b3 :: + 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:1338: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_47b4e8670d60e1b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_d751d262c50b9bdb" hs_bindgen_d751d262c50b9bdb :: + 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:1340: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_d751d262c50b9bdb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_21607e8e916440da" hs_bindgen_21607e8e916440da :: + 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:1360: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_21607e8e916440da + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_f30c35a21a1a040b" hs_bindgen_f30c35a21a1a040b :: + 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:1382: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_f30c35a21a1a040b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_a0fd221d488c260b" hs_bindgen_a0fd221d488c260b :: + 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_a0fd221d488c260b + +{-| 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:1390: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_a0fd221d488c260b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_00ed003de2905288" hs_bindgen_00ed003de2905288 :: + 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:1395:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_00ed003de2905288 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_5f73de1fcf9560d3" hs_bindgen_5f73de1fcf9560d3 :: + 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:1409: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_5f73de1fcf9560d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_c3f9b37eda00f4d1" hs_bindgen_c3f9b37eda00f4d1 :: + 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:1414: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_c3f9b37eda00f4d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_8f580d5b19398f68" hs_bindgen_8f580d5b19398f68 :: + 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:1419: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_8f580d5b19398f68 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_2b555695098dc333" hs_bindgen_2b555695098dc333 :: + 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:1424: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_2b555695098dc333 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_7dd06f03fd3373ee" hs_bindgen_7dd06f03fd3373ee :: + 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:1426: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_7dd06f03fd3373ee + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_7442272a1dbd7aa1" hs_bindgen_7442272a1dbd7aa1 :: + 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:1433: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_7442272a1dbd7aa1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_261cd2f2939418bf" hs_bindgen_261cd2f2939418bf :: + 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:1449: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_261cd2f2939418bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_9dbc0d90f5da7ce5" hs_bindgen_9dbc0d90f5da7ce5 :: + 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:1465: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_9dbc0d90f5da7ce5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_9912007d0531e11f" hs_bindgen_9912007d0531e11f :: + 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:1482: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_9912007d0531e11f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_47f4bfcc63d345a5" hs_bindgen_47f4bfcc63d345a5 :: + 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:1497: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_47f4bfcc63d345a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_86755334cf5f3cc3" hs_bindgen_86755334cf5f3cc3 :: + 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:1513: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_86755334cf5f3cc3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_e96000b8d1f42d9b" hs_bindgen_e96000b8d1f42d9b :: + 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:1528: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_e96000b8d1f42d9b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_a894abef6c8fc72e" hs_bindgen_a894abef6c8fc72e :: + 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_a894abef6c8fc72e + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1539: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_a894abef6c8fc72e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_b6648f274a9dd554" hs_bindgen_b6648f274a9dd554 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1541: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_b6648f274a9dd554 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_31598f8bbd1f652d" hs_bindgen_31598f8bbd1f652d :: + 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:1544: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_31598f8bbd1f652d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_161dcadb959bb689" hs_bindgen_161dcadb959bb689 :: + 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:1549: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_161dcadb959bb689 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_0c361c196f2cc624" hs_bindgen_0c361c196f2cc624 :: + 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:1554: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_0c361c196f2cc624 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_bce56e13c0887233" hs_bindgen_bce56e13c0887233 :: + 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:1559: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_bce56e13c0887233 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_232f1d8f2dd24994" hs_bindgen_232f1d8f2dd24994 :: + 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:1561: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_232f1d8f2dd24994 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_66b6664163f83684" hs_bindgen_66b6664163f83684 :: + 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:1566: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_66b6664163f83684 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_399b82550cc04cd2" hs_bindgen_399b82550cc04cd2 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1568: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_399b82550cc04cd2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_1f233c0e6c7f783c" hs_bindgen_1f233c0e6c7f783c :: + 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:1571: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_1f233c0e6c7f783c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_99ff3f406456a017" hs_bindgen_99ff3f406456a017 :: + 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:1576:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_99ff3f406456a017 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_e303bd9426aaa5c8" hs_bindgen_e303bd9426aaa5c8 :: + 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:1581: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_e303bd9426aaa5c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_a13f7767ecc92103" hs_bindgen_a13f7767ecc92103 :: + 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:1583: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_a13f7767ecc92103 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_oid@ +foreign import ccall safe "hs_bindgen_a10317b810732ba4" hs_bindgen_a10317b810732ba4 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1589: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_a10317b810732ba4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_oid@ +foreign import ccall safe "hs_bindgen_87419d1d20e2d3d0" hs_bindgen_87419d1d20e2d3d0 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1592: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_87419d1d20e2d3d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_stateful_operation@ +foreign import ccall safe "hs_bindgen_1887ddc6c391acfb" hs_bindgen_1887ddc6c391acfb :: + 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:1599: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_1887ddc6c391acfb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_remaining_operations@ +foreign import ccall safe "hs_bindgen_b08447bbc61035f7" hs_bindgen_b08447bbc61035f7 :: + 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:1606: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_b08447bbc61035f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_769c209f50080ab7" hs_bindgen_769c209f50080ab7 :: + 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:1611: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_769c209f50080ab7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_1ecb79b04603daef" hs_bindgen_1ecb79b04603daef :: + 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_1ecb79b04603daef + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1613: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_1ecb79b04603daef x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_dd21114ceb9e3b33" hs_bindgen_dd21114ceb9e3b33 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1616: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_dd21114ceb9e3b33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_affbd6180d2816d8" hs_bindgen_affbd6180d2816d8 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1618: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_affbd6180d2816d8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_c817c055f1de569d" hs_bindgen_c817c055f1de569d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1620: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_c817c055f1de569d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_2637dc521b2626d5" hs_bindgen_2637dc521b2626d5 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1622: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_2637dc521b2626d5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_7df9e77d36190212" hs_bindgen_7df9e77d36190212 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1624: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_7df9e77d36190212 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_2868bf7397b7caaa" hs_bindgen_2868bf7397b7caaa :: + 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:1627: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_2868bf7397b7caaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_1101f46101855c01" hs_bindgen_1101f46101855c01 :: + 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:1629: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_1101f46101855c01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_582a60ea7a75e85e" hs_bindgen_582a60ea7a75e85e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1632: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_582a60ea7a75e85e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_17bd126410da998a" hs_bindgen_17bd126410da998a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1634: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_17bd126410da998a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_3a30a3ad9dd74cab" hs_bindgen_3a30a3ad9dd74cab :: + 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:1640: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_3a30a3ad9dd74cab + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_93686acd11afe1cb" hs_bindgen_93686acd11afe1cb :: + 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:1643: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_93686acd11afe1cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_afd6148c0344e7ad" hs_bindgen_afd6148c0344e7ad :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1646: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_afd6148c0344e7ad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_fbc41115e67ae356" hs_bindgen_fbc41115e67ae356 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1649: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_fbc41115e67ae356 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_5ba0a81f6c7b7b43" hs_bindgen_5ba0a81f6c7b7b43 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1651: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_5ba0a81f6c7b7b43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_40288b59089b466a" hs_bindgen_40288b59089b466a :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1653: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_40288b59089b466a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_f5cb5e4b75613a5e" hs_bindgen_f5cb5e4b75613a5e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1655: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_f5cb5e4b75613a5e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_8c2d1bf3881b3bbe" hs_bindgen_8c2d1bf3881b3bbe :: + 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:1670: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_8c2d1bf3881b3bbe + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_226f3dae39e71fa0" hs_bindgen_226f3dae39e71fa0 :: + 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:1684: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_226f3dae39e71fa0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_16d253c3a69c3db5" hs_bindgen_16d253c3a69c3db5 :: + 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:1702: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_16d253c3a69c3db5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_39b2a2a6d57f2a6a" hs_bindgen_39b2a2a6d57f2a6a :: + 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:1717: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_39b2a2a6d57f2a6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_7e149a5d6646f064" hs_bindgen_7e149a5d6646f064 :: + 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_7e149a5d6646f064 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1723: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_7e149a5d6646f064 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_7e3ed9fddd24264f" hs_bindgen_7e3ed9fddd24264f :: + 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_7e3ed9fddd24264f + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1725: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_7e3ed9fddd24264f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_82379774e651e0e6" hs_bindgen_82379774e651e0e6 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1728: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_82379774e651e0e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_98a88d50f4a5b867" hs_bindgen_98a88d50f4a5b867 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1731: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_98a88d50f4a5b867 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_295880cb3b6417f9" hs_bindgen_295880cb3b6417f9 :: + 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_295880cb3b6417f9 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1737: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_295880cb3b6417f9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_dcdb703584b0103e" hs_bindgen_dcdb703584b0103e :: + 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_dcdb703584b0103e + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1739: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_dcdb703584b0103e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_319b6b29687178ff" hs_bindgen_319b6b29687178ff :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1742: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_319b6b29687178ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_fba44bc1eed0a372" hs_bindgen_fba44bc1eed0a372 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1745: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_fba44bc1eed0a372 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_6b8588032fa7c580" hs_bindgen_6b8588032fa7c580 :: + 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_6b8588032fa7c580 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1751: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_6b8588032fa7c580 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_f2197fd3f545a831" hs_bindgen_f2197fd3f545a831 :: + 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_f2197fd3f545a831 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1753: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_f2197fd3f545a831 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_a927f41c3e815936" hs_bindgen_a927f41c3e815936 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1756: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_a927f41c3e815936 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_5bcc07542683dd18" hs_bindgen_5bcc07542683dd18 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1759: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_5bcc07542683dd18 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_a4bcd01d79a8b2d1" hs_bindgen_a4bcd01d79a8b2d1 :: + 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_a4bcd01d79a8b2d1 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1765: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_a4bcd01d79a8b2d1 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_4af0f19d5b338f5c" hs_bindgen_4af0f19d5b338f5c :: + 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_4af0f19d5b338f5c + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1767: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_4af0f19d5b338f5c x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_dcb4cfb9d0aa1e5d" hs_bindgen_dcb4cfb9d0aa1e5d :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1770: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_dcb4cfb9d0aa1e5d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_6223dfe5f6762b76" hs_bindgen_6223dfe5f6762b76 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1773: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_6223dfe5f6762b76 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_4f95782bb555b1dc" hs_bindgen_4f95782bb555b1dc :: + 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_4f95782bb555b1dc + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1780: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_4f95782bb555b1dc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_4598faaa5b810ac6" hs_bindgen_4598faaa5b810ac6 :: + 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_4598faaa5b810ac6 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1783: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_4598faaa5b810ac6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_fedab4963f87e6b6" hs_bindgen_fedab4963f87e6b6 :: + 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_fedab4963f87e6b6 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1794: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_fedab4963f87e6b6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_1b97775531f70781" hs_bindgen_1b97775531f70781 :: + 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_1b97775531f70781 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1797: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_1b97775531f70781 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_ca7714307ec130a5" hs_bindgen_ca7714307ec130a5 :: + 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:1801: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_ca7714307ec130a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_8d4a859c1723bd4d" hs_bindgen_8d4a859c1723bd4d :: + 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:1805: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_8d4a859c1723bd4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_76679b49d96c13b5" hs_bindgen_76679b49d96c13b5 :: + 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_76679b49d96c13b5 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1812: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_76679b49d96c13b5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_63301443c25583eb" hs_bindgen_63301443c25583eb :: + 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_63301443c25583eb + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1815: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_63301443c25583eb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_af3712d738963fb9" hs_bindgen_af3712d738963fb9 :: + 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_af3712d738963fb9 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1822: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_af3712d738963fb9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_d46b3977b521e1ea" hs_bindgen_d46b3977b521e1ea :: + 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_d46b3977b521e1ea + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1828: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_d46b3977b521e1ea x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_6677bf1d1b7ee51a" hs_bindgen_6677bf1d1b7ee51a :: + 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_6677bf1d1b7ee51a + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1838: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_6677bf1d1b7ee51a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_dca4a6b5ff453eb0" hs_bindgen_dca4a6b5ff453eb0 :: + 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_dca4a6b5ff453eb0 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1841: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_dca4a6b5ff453eb0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_ef734a90d29def45" hs_bindgen_ef734a90d29def45 :: + 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_ef734a90d29def45 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1848: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_ef734a90d29def45 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_20f151e8c413a642" hs_bindgen_20f151e8c413a642 :: + 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_20f151e8c413a642 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1851: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_20f151e8c413a642 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_39c3155fc0b86f0e" hs_bindgen_39c3155fc0b86f0e :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1857: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_39c3155fc0b86f0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_4e7db9756476a006" hs_bindgen_4e7db9756476a006 :: + 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:1860: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_4e7db9756476a006 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_82687b2e8f0373bf" hs_bindgen_82687b2e8f0373bf :: + 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:1863: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_82687b2e8f0373bf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_ba483413174eeb4d" hs_bindgen_ba483413174eeb4d :: + 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:1866: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_ba483413174eeb4d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_339f66fcbd1898fa" hs_bindgen_339f66fcbd1898fa :: + 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:1869: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_339f66fcbd1898fa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_21027a8c825c1036" hs_bindgen_21027a8c825c1036 :: + 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:1872: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_21027a8c825c1036 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_6d7597dfc85dcdd7" hs_bindgen_6d7597dfc85dcdd7 :: + 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:1875: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_6d7597dfc85dcdd7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_86f8b09802296247" hs_bindgen_86f8b09802296247 :: + 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:1879: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_86f8b09802296247 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_df2568a4a68a03f6" hs_bindgen_df2568a4a68a03f6 :: + 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:1883: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_df2568a4a68a03f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_9ccedc714baf20bc" hs_bindgen_9ccedc714baf20bc :: + 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:1886: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_9ccedc714baf20bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_9d412a7aaa563d51" hs_bindgen_9d412a7aaa563d51 :: + 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:1893: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_9d412a7aaa563d51 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_081f16057aa35941" hs_bindgen_081f16057aa35941 :: + 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:1901: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_081f16057aa35941 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_bc5914f80c43f468" hs_bindgen_bc5914f80c43f468 :: + 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:1906: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_bc5914f80c43f468 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_cb44631614da72bb" hs_bindgen_cb44631614da72bb :: + 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:1909: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_cb44631614da72bb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_92efce19af465aef" hs_bindgen_92efce19af465aef :: + 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_92efce19af465aef + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1912: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_92efce19af465aef x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_6f71dc15bdca15f5" hs_bindgen_6f71dc15bdca15f5 :: + 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:1925: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_6f71dc15bdca15f5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_a7cd1fc6f9174c27" hs_bindgen_a7cd1fc6f9174c27 :: + 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:1930: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_a7cd1fc6f9174c27 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_5f908a916fd0c9a2" hs_bindgen_5f908a916fd0c9a2 :: + 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:1933: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_5f908a916fd0c9a2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_09fa02138cdf1aff" hs_bindgen_09fa02138cdf1aff :: + 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_09fa02138cdf1aff + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1936: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_09fa02138cdf1aff x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_d49c882163a8bead" hs_bindgen_d49c882163a8bead :: + 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:1948: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_d49c882163a8bead + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_ee34c2d1a6ebd3c1" hs_bindgen_ee34c2d1a6ebd3c1 :: + 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:1953: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_ee34c2d1a6ebd3c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_5868ad1ad0d82d55" hs_bindgen_5868ad1ad0d82d55 :: + 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:1955: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_5868ad1ad0d82d55 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_282c3eb759b6602f" hs_bindgen_282c3eb759b6602f :: + 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_282c3eb759b6602f + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1957: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_282c3eb759b6602f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_12b494ee80a45f89" hs_bindgen_12b494ee80a45f89 :: + 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:1960: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_12b494ee80a45f89 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_00f953f090fd588d" hs_bindgen_00f953f090fd588d :: + 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:1968: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_00f953f090fd588d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_070224579fb1e2de" hs_bindgen_070224579fb1e2de :: + 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:1976: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_070224579fb1e2de + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_6220e7b1b351ec1d" hs_bindgen_6220e7b1b351ec1d :: + 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_6220e7b1b351ec1d + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1978: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_6220e7b1b351ec1d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_7cab81537cbfec11" hs_bindgen_7cab81537cbfec11 :: + 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_7cab81537cbfec11 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1979: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_7cab81537cbfec11 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_11a63a568df86912" hs_bindgen_11a63a568df86912 :: + 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:1987: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_11a63a568df86912 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_55091f43a9c30c53" hs_bindgen_55091f43a9c30c53 :: + 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:1992: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_55091f43a9c30c53 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_41f2a47bece91b79" hs_bindgen_41f2a47bece91b79 :: + 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:1994: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_41f2a47bece91b79 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_85388ff7ba268bb7" hs_bindgen_85388ff7ba268bb7 :: + 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:1997: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_85388ff7ba268bb7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_44f52319bd4f90e9" hs_bindgen_44f52319bd4f90e9 :: + 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:1999: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_44f52319bd4f90e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_a3d93302c6f0e36c" hs_bindgen_a3d93302c6f0e36c :: + 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_a3d93302c6f0e36c + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:2002: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_a3d93302c6f0e36c x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_61e035f841539a69" hs_bindgen_61e035f841539a69 :: + 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:2016: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_61e035f841539a69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_a6a1c81b4168fd22" hs_bindgen_a6a1c81b4168fd22 :: + 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:2021: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_a6a1c81b4168fd22 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_7ce30cf5ae386f60" hs_bindgen_7ce30cf5ae386f60 :: + 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:2024: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_7ce30cf5ae386f60 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_65cf979f6422a73e" hs_bindgen_65cf979f6422a73e :: + 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:2029: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_65cf979f6422a73e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_5dce310d7abaad45" hs_bindgen_5dce310d7abaad45 :: + 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_5dce310d7abaad45 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2033: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_5dce310d7abaad45 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_7741dd922261b6d0" hs_bindgen_7741dd922261b6d0 :: + 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:2046: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_7741dd922261b6d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_8c22d5c6419ce539" hs_bindgen_8c22d5c6419ce539 :: + 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:2051: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_8c22d5c6419ce539 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_f641e6b4292aba06" hs_bindgen_f641e6b4292aba06 :: + 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:2054: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_f641e6b4292aba06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_a5fcd35e55d69506" hs_bindgen_a5fcd35e55d69506 :: + 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_a5fcd35e55d69506 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2059: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_a5fcd35e55d69506 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_51b1bb13f2e138b7" hs_bindgen_51b1bb13f2e138b7 :: + 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:2072: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_51b1bb13f2e138b7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_0d54442bcf6134f3" hs_bindgen_0d54442bcf6134f3 :: + 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_0d54442bcf6134f3 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2079: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_0d54442bcf6134f3 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_9ed854fdfd954cf4" hs_bindgen_9ed854fdfd954cf4 :: + 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_9ed854fdfd954cf4 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2094: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_9ed854fdfd954cf4 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_e744fdd8c0952945" hs_bindgen_e744fdd8c0952945 :: + 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_e744fdd8c0952945 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2109: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_e744fdd8c0952945 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_4129f53d4f14e323" hs_bindgen_4129f53d4f14e323 :: + 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:2110: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_4129f53d4f14e323 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_9ff91a2c2029132d" hs_bindgen_9ff91a2c2029132d :: + 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:2115: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_9ff91a2c2029132d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_12f77fd7e9fe36d7" hs_bindgen_12f77fd7e9fe36d7 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2117: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_12f77fd7e9fe36d7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_c5f925a43e4ea08b" hs_bindgen_c5f925a43e4ea08b :: + 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:2120: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_c5f925a43e4ea08b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_bab85e4c73114167" hs_bindgen_bab85e4c73114167 :: + 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:2121: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_bab85e4c73114167 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_3a0f9a44b1e29ae5" hs_bindgen_3a0f9a44b1e29ae5 :: + 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:2123: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_3a0f9a44b1e29ae5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_7a21a12e0c722879" hs_bindgen_7a21a12e0c722879 :: + 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:2124: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_7a21a12e0c722879 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_0a8bd1771ca54bea" hs_bindgen_0a8bd1771ca54bea :: + 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:2128: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_0a8bd1771ca54bea + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_dca499e547b2e015" hs_bindgen_dca499e547b2e015 :: + 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:2130: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_dca499e547b2e015 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_1f88e16f8ccc4667" hs_bindgen_1f88e16f8ccc4667 :: + 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:2131: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_1f88e16f8ccc4667 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_94ba191a9097a124" hs_bindgen_94ba191a9097a124 :: + 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:2132: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_94ba191a9097a124 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_fd47b63dba5c02aa" hs_bindgen_fd47b63dba5c02aa :: + 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:2134: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_fd47b63dba5c02aa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_a2a14a87c63938b1" hs_bindgen_a2a14a87c63938b1 :: + 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:2137: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_a2a14a87c63938b1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_4468cbc01d570f40" hs_bindgen_4468cbc01d570f40 :: + 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:2139: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_4468cbc01d570f40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_ee850a382bb4178e" hs_bindgen_ee850a382bb4178e :: + 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:2143: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_ee850a382bb4178e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_5a4dd33ef541898c" hs_bindgen_5a4dd33ef541898c :: + 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:2148: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_5a4dd33ef541898c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_77a4d22596853e6c" hs_bindgen_77a4d22596853e6c :: + 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:2151: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_77a4d22596853e6c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_dd5c6314c9460d6a" hs_bindgen_dd5c6314c9460d6a :: + 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:2154: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_dd5c6314c9460d6a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_64377ab8f05d2576" hs_bindgen_64377ab8f05d2576 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2170: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_64377ab8f05d2576 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_ac195f2d284bd8f2" hs_bindgen_ac195f2d284bd8f2 :: + 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:2176: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_ac195f2d284bd8f2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_50d3c76885ea2b0e" hs_bindgen_50d3c76885ea2b0e :: + 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:2187: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_50d3c76885ea2b0e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_31ff0f87e579856c" hs_bindgen_31ff0f87e579856c :: + 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:2202: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_31ff0f87e579856c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_0a88e97b4142ff30" hs_bindgen_0a88e97b4142ff30 :: + 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:2210: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_0a88e97b4142ff30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_f798792ae8420762" hs_bindgen_f798792ae8420762 :: + 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_f798792ae8420762 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2212: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_f798792ae8420762 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_e5dc8c402551df40" hs_bindgen_e5dc8c402551df40 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2214: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_e5dc8c402551df40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_8fb4084183bdce07" hs_bindgen_8fb4084183bdce07 :: + 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:2220: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_8fb4084183bdce07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_b3deec8f0342d420" hs_bindgen_b3deec8f0342d420 :: + 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:2227: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_b3deec8f0342d420 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_c780f9553e847fa6" hs_bindgen_c780f9553e847fa6 :: + 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_c780f9553e847fa6 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2245: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_c780f9553e847fa6 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_e62f182b4396af8f" hs_bindgen_e62f182b4396af8f :: + 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_e62f182b4396af8f + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2254: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_e62f182b4396af8f (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_7f047a5c6f32b731" hs_bindgen_7f047a5c6f32b731 :: + 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_7f047a5c6f32b731 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2262: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_7f047a5c6f32b731 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_32c2e159d7d2a830" hs_bindgen_32c2e159d7d2a830 :: + 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_32c2e159d7d2a830 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2272: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_32c2e159d7d2a830 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_f3d419aaf535eec6" hs_bindgen_f3d419aaf535eec6 :: + 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_f3d419aaf535eec6 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2291: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_f3d419aaf535eec6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_f53bd8d0e1ddce2b" hs_bindgen_f53bd8d0e1ddce2b :: + 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:2298:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_f53bd8d0e1ddce2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_5ddefac2ab5e2616" hs_bindgen_5ddefac2ab5e2616 :: + 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:2304: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_5ddefac2ab5e2616 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_87b3082b1d206608" hs_bindgen_87b3082b1d206608 :: + 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:2310: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_87b3082b1d206608 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_c0ecdd42fd4f4c63" hs_bindgen_c0ecdd42fd4f4c63 :: + 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_c0ecdd42fd4f4c63 + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2323: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_c0ecdd42fd4f4c63 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_3eba6433c31ff85e" hs_bindgen_3eba6433c31ff85e :: + 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:2331:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_3eba6433c31ff85e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_b55814784b547b9c" hs_bindgen_b55814784b547b9c :: + 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:2340: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_b55814784b547b9c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_192e378b28c815dd" hs_bindgen_192e378b28c815dd :: + 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:2351: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_192e378b28c815dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_e8832d73054e0590" hs_bindgen_e8832d73054e0590 :: + 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_e8832d73054e0590 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2362: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_e8832d73054e0590 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_567c3bde29740925" hs_bindgen_567c3bde29740925 :: + 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:2369:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_567c3bde29740925 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_584cb4e0a8d35c3a" hs_bindgen_584cb4e0a8d35c3a :: + 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_584cb4e0a8d35c3a + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2372: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_584cb4e0a8d35c3a x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_69a903833c13240d" hs_bindgen_69a903833c13240d :: + 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_69a903833c13240d + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2375: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_69a903833c13240d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_89e0d5b985f16807" hs_bindgen_89e0d5b985f16807 :: + 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:2387: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_89e0d5b985f16807 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_e1d484d5900ba088" hs_bindgen_e1d484d5900ba088 :: + 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:2395: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_e1d484d5900ba088 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_5478c8076ac226e2" hs_bindgen_5478c8076ac226e2 :: + 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_5478c8076ac226e2 + +{-| 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:2410: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_5478c8076ac226e2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_2992a136c01038ce" hs_bindgen_2992a136c01038ce :: + 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_2992a136c01038ce + +{-| 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:2429: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_2992a136c01038ce x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_d29190273777e72e" hs_bindgen_d29190273777e72e :: + 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_d29190273777e72e + +{-| 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:2445: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_d29190273777e72e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_1c7333c1662721e3" hs_bindgen_1c7333c1662721e3 :: + 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_1c7333c1662721e3 + +{-| 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:2472: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_1c7333c1662721e3 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_9_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_ff3087b1bf2d0b64" hs_bindgen_ff3087b1bf2d0b64 :: + 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:2490: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_ff3087b1bf2d0b64 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_fe438c2c2e29c705" hs_bindgen_fe438c2c2e29c705 :: + 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:2511: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_fe438c2c2e29c705 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_60461bd5dc07f7dd" hs_bindgen_60461bd5dc07f7dd :: + 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:2532: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_60461bd5dc07f7dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_51f8e416f15f1b14" hs_bindgen_51f8e416f15f1b14 :: + 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:2557:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_51f8e416f15f1b14 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_df4109806e892fcc" hs_bindgen_df4109806e892fcc :: + 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:2565: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_df4109806e892fcc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_bdf8200c906088fd" hs_bindgen_bdf8200c906088fd :: + 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:2575: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_bdf8200c906088fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_ctx_from_esys@ +foreign import ccall safe "hs_bindgen_40f906b06c834b66" hs_bindgen_40f906b06c834b66 :: + 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:2586: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_40f906b06c834b66 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_58c626c47cff6cc7" hs_bindgen_58c626c47cff6cc7 :: + 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:2598: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_58c626c47cff6cc7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_0c36cb5c423170c2" hs_bindgen_0c36cb5c423170c2 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2605: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_0c36cb5c423170c2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_666294986c1ebb3a" hs_bindgen_666294986c1ebb3a :: + 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:2619: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_666294986c1ebb3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall safe "hs_bindgen_1203c60af10897e1" hs_bindgen_1203c60af10897e1 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2631: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_1203c60af10897e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_f9cb5cc3ff474e43" hs_bindgen_f9cb5cc3ff474e43 :: + 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:2642: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_f9cb5cc3ff474e43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_5badde6119acbaaa" hs_bindgen_5badde6119acbaaa :: + 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:2654: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_5badde6119acbaaa + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_85de6dfc631d7466" hs_bindgen_85de6dfc631d7466 :: + 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:2661: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_85de6dfc631d7466 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/Unsafe.hs new file mode 100644 index 00000000..a0ffb62e --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_9_0/Unsafe.hs @@ -0,0 +1,14911 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_9_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_9_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_6a7546572a32c97d (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_eb20104abca26b63 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_de917277788bf6ae (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_92b597dec171adc4 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_05be7b82d7bf15b2 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_3ec3ee1ecd337f24 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_847bfff1a58bf9c1 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_16cf984f094d6d37 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_1028a46bb2dd80a8 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_403b9c4a6dd64b05 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2cdebe6c00d3ad7b (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ca75d0ed47761de1 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_334fce31dd2c01be (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_2f51c4084bc3f9ca (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_906c61f6efc6d678 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7111abf608b8b161 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_50a433d014172c01 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_64707c1db3c3ae5b (" + , " 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_91c3b4ab88336853 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a8a40d00df47e948 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d2d76f2a9114b17 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_488b88148704efc6 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0680da5c97f13aa3 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfb447f9d33c4ac3 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_01c5229a254f92b4 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8f607e7a109cbdd8 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_beb04a00bf54f195 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_62df2e3b0d6add72 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f9caf4e71d2bc112 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8e864cac660fc6b0 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8132b40a4910fd40 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_82a25c975347f386 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e2ac42d226170da8 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_627100aa8556bd1f (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_abe949285e2a06c7 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d54dfc06ac5bc211 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_09907c0ff3522bb6 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8dfc2cde7745bdad (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5370b07464fe2652 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_66486154e457a104 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_4c4348722400f70f (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_016910c7f082939e (" + , " 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_350ef34a99841572 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_140ce3eb2d582800 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ce16ccb1394a91e4 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6bbb88f1cb1d794d (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfe5414cebb21993 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bab3949f273fd2a1 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf0b1308796ee031 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_86614356f83104a3 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_dcba29cf07612a1c (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4fd518d4b30102cb (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d1cd76352d281def (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c9873a4495fada4c (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5674745d2d89c861 (" + , " 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_920e94af3b3a9e11 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3fc8f4a70480aee6 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_0340d2307479277e (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_01570f8dd21bd953 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a802676e9751abb1 (" + , " 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_1e7e03ad61b35599 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_223a5f4a2eb2b697 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d52b358620183986 (" + , " 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_a5cbffa220222941 (" + , " 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_a33fc9837c32ae53 (" + , " 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_eb256b8e4e5480ce (" + , " 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_87e400db025bd9a4 (" + , " 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_4ad1cfa41075d8f7 (" + , " 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_934df1c48c3b303b (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_db3f5b695214640a (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ec267650cc9e13af (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_fe53f73a2f25923f (" + , " 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_0d8ea958d4456059 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_0e4dafe595a5fef2 (" + , " 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_5af1a79a6ad02dbb (" + , " 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_f2bc5fa6b8f5f5bc (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7d64de5f6ef1e07 (" + , " 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_d898a09ee3b62a1f (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_2a14e8fb6761e6ce (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_166788bec223ded5 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1bc914aaec207e33 (" + , " 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_c9bb5e048d1a5aff (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_0dfe452792f32ec6 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8fb3ad7237fa68e6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3b387103efa8e6f1 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_91b65732b1098365 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e5e6150b1c689a43 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f0ddf91d0e45ba5 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7433b702a48e8bed (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_66cb11784ad1f155 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fa3c5695263097f7 (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dbd3e1b7ede29f1e (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_2534bbda3c8853c3 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_f740daeefa5ecec4 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_cff8f7995aa578c1 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_ef6aeb3f21adf6ff (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_37025907d58b9ee0 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_6b32985f5785d1d2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b50de73ce89f13a3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5e9f74ca9e1b61d0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c25af3cd590345a7 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b4868d36da0e310c (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dc8d76514a675ea0 (" + , " 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_c72c3b363a318381 (" + , " 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_596f8ac9e8e3ac47 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a6726c125e798071 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ebb3cf67257e0f70 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_85b26400aacb0bf6 (" + , " 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_7c56bf66278952a4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0770a166adcbe863 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3b0111022529fe5 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d4d9377ca0998ce (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_301e38c22d19e84c (" + , " 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_30902d8751d27d1d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_269cd563b8d7c11e (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d526aab2d0387f85 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52e7ee8418f17b56 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_86da1d961514665d (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45ee3b7cbc8dd0b5 (" + , " 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_37abd4dc099a175d (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ac6fa20bb6f70e24 (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_bbdb77b2440ed67d (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3b20303b5481305d (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_65cc3fc60ded7745 (" + , " 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_62bd02c737951603 (" + , " 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_518038ac38037a3a (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d779273c3e78523c (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_24ac25c008c26fd1 (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_82faad6456c23916 (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_31ca912db8fd7a7f (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_663051516c1f9205 (" + , " 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_f6d03a0b8b2a686c (" + , " 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_b2ab0aea9c0e3c02 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_197743f789327c92 (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f0a54b11992d2b69 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7d47d516c058428f (" + , " 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_700b7e449a51d10b (" + , " 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_68ea32ab01c713c7 (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79f754a0dcf64215 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ecc7f160bd591462 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_99cc8ac03ea7ff48 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_90c7eaafdba0d510 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ef2e98c3861b7b7c (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2f33ee9358d08709 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bde09be50b2e268c (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4942048a79e964a5 (" + , " 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_be5b739b268fb52d (" + , " 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_466274684d688ef4 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8594a6131cd9d80c (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b10ef93b1f27ce9f (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dae2a1636c4197c8 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23d650417f0472c7 (" + , " 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_f20a4deeae048e31 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aae6f07e1d5d3250 (" + , " 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_45cc7f4ee3cad364 (" + , " 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_fc2a506384f20a91 (" + , " 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_b9a7b577124aee61 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e0f829e2216d0993 (" + , " 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_cae9c61565608d04 (" + , " 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_21e5e3939835687b (" + , " 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_c3f67533c8638c1b (" + , " 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_c1cd383aa3d2e5c4 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_17ed479003c79617 (" + , " 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_4ed5c240d547e46d (" + , " 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_9c10c8d9dac0ee3d (" + , " 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_7299a38f32070d24 (" + , " 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_5b33cedd27815133 (" + , " 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_d763bb0544d2542a (" + , " 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_c41d0dfd87c9d925 (" + , " 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_3c9525987ceeebf3 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_91e9213b219fdb4e (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f111e9f5925bed9 (" + , " 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_0d2d73c4fced0a19 (" + , " 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_52fcc31e2cdd968c (" + , " 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_aac134ba0385e503 (" + , " 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_d793581459382306 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f8f07de99c4436e (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7ae595739f2900bd (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0827facb2fe0bbb1 (" + , " 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_e7f48a46849c3b20 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_29d3cef2aa82d805 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ab228d5d98067ba (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a71ff0b1257fe82 (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_87112fba288079a0 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_64d129bfc3d8165d (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79be82d18239c3b0 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2726d9c251f80710 (" + , " 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_7df87beb231e2606 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4301116df5ff3df6 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0cb4a7096ebaa73b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79f24173d45a1fc5 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cb595d81472133db (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ecaedb85ea8f50d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e2dd2bf7e9cea1af (" + , " 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_b232739f0364a847 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_877794bb664396ca (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a39904ca36b90e2b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3bc1ffe9824dd939 (" + , " 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_75e5a208e1713fb8 (" + , " 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_a06751ef79781cf7 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_236ea947a2abc10e (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_76fff31f84d51189 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_befb2cd84130a123 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cdb1dd569a9a30e9 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_773adb1f49640e06 (" + , " 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_5765dd5128c1b5dd (" + , " 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_aa359de0c47e8baf (" + , " 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_88cde7f1858f6d77 (" + , " 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_b3d21b93f6083688 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_987c15d878a770db (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9be263b256bf5db5 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2a32526d4e1c25f (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc13193a6405b971 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6ae85b84186c78eb (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2be0fdac0909ac06 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3f22ba92e1f8188f (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_76dee98b45118edb (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_dbb2472bbedce689 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d4506ae965440776 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_75f826b6593780c3 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_10d73039285044b0 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92945ac156a15f35 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_763b9eb00a37dcde (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8f672a618df850fd (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7874ae985f6c3e9b (" + , " 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_45a5261aeb779208 (" + , " 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_85ac994d8b9ab02d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_41e988498cbfaf79 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ce2b6d2071906ea2 (" + , " 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_773edcdc37c47c45 (" + , " 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_3a6628b9f48d67f2 (" + , " 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_95c0b4a77b4f6346 (" + , " 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_04044ff729cc86d4 (" + , " 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_2247bf50f60146d3 (" + , " 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_f31ab56d38204af9 (" + , " 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_c920fd26533b215e (" + , " 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_52fa11e261c896fc (" + , " 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_dce7316b51ef58ad (" + , " 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_fe3b2cc692af4b7c (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_83f82e6c83379d9d (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7f2e89ed349b3cd1 (" + , " 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_5e38d09846822eb8 (" + , " 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_d3ed1e2def3ecece (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4b7b6f96c982cb82 (" + , " 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_7b7b2b6b5ab8f0f6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2613b9fcd5acbda7 (" + , " 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_9f6d76d0731335b8 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b4687cbff9787c19 (" + , " 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_235e4d75c7e1c5a6 (" + , " 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_b3b581b388d40e03 (" + , " 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_7de54b664c4b33ff (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b6b57a317f2165d3 (" + , " 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_4c69b961910873c1 (" + , " 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_4472fa05af3edad9 (" + , " 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_75ad44de67342a25 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_911dbc0e9261fc70 (" + , " 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_77c0ad6690fa9c8e (" + , " 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_eb56c67e3f6265b4 (" + , " 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_24d8b39ddb9ce8d2 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_999c33fb61bd93dd (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_af8d665a32e14214 (" + , " 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_3dd0f473bb6661f9 (" + , " 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_71d6e83c025b440d (" + , " 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_fef6f95f5af5ec74 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_58687016384f09c4 (" + , " 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_c01be8c9f03e1a52 (" + , " 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_8c980d4ff7727c6d (" + , " 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_7f6290f5ae486294 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_83d6ed912b79fe71 (" + , " 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_8242a4001305f899 (" + , " 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_3e51a89c269413c8 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9dc8cd15393508a0 (" + , " 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_3459b66475a33123 (" + , " 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_c67ff345832b4565 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7b5a577353092dd4 (" + , " 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_70064be0c0897220 (" + , " 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_805c6c297167efd5 (" + , " 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_b2b50d13f1da81c6 (" + , " 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_8af2163fafb06ef0 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8083053b77de10b9 (" + , " 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_9a29f758690502ae (" + , " 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_46834c2692c5cee3 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ff4f6372af1d98e5 (" + , " 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_e2908a93cd55b49f (" + , " 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_64d47359770903f6 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2c7e5279668377ec (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c0d6b10fd81746b5 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_da966eda1e016263 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_312dc271b33c6cd5 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42813d51aa0edfcc (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ff559f6ab86013e1 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92d32a3fbe5254dd (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_615f3dca53ecb2bd (" + , " 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_8e575db4df3790cc (" + , " 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_31e64fe2ef5e6ed1 (" + , " 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_44d13617eb8607b3 (" + , " 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_b41e98b8f066b5bd (" + , " 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_4be7329cf2ea6ea4 (" + , " 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_6bbbe2f48746f185 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f3a306b3029e97ff (" + , " 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_72667cb808ce7559 (" + , " 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_526b428f7ca2c269 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fd9264f48f80b102 (" + , " 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_e7a7f08b3c1555ca (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5efed5121515539f (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3b7b958ac1e4fc2d (" + , " 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_e79063b705b6ecf2 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_2182350eab042c48 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d1d50da2cc666cf (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1272d6a73c013432 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_293223cefd18f5db (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_74810c54403fe3cc (" + , " 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_6c1649fbff4f36c5 (" + , " 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_beadaf081b8d0785 (" + , " 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_555e7ae360c01457 (" + , " 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_6004c4f61a5583e6 (" + , " 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_3057ea4b2541c97d (" + , " 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_ad908cc527793e1e (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ecdbb11383b9c381 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_628c8c541b1449d1 (" + , " 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_4e51e5805222ed1e (" + , " 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_952224d1eab49180 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6bfec53abc23ef91 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6f2edba1f89cada0 (" + , " 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_40c9390a10eb0f0d (" + , " 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_6510953e7a676aad (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_83298bfba68c00e7 (" + , " 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_9efe85dc17f2ed47 (" + , " 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_9c235153ece9e10c (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_a1c4a71e073016b2 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d035cf05df063637 (" + , " 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_d0877aad0c35b7b2 (" + , " 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_ee245e2ad4c39db9 (" + , " 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_b6f657f60c38cc78 (" + , " 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_4648fb60dd8860b5 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f4332c24dbc30bb5 (" + , " 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_4325707b1b19ddf1 (" + , " 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_479cc076fffefd2c (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_42443919b01937cc (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d826ca09207e9acc (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f188867290f1318 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40641637d1003f7f (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7b893c99e5324845 (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d12f62f9527ec88a (" + , " 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_798dfc64805abf04 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d27d330afcd57a30 (" + , " 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_4acbb703684b9a67 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55088d77a617c7b9 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_6a7546572a32c97d" hs_bindgen_6a7546572a32c97d :: + 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_6a7546572a32c97d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_eb20104abca26b63" hs_bindgen_eb20104abca26b63 :: + 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_eb20104abca26b63 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_de917277788bf6ae" hs_bindgen_de917277788bf6ae :: + 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_de917277788bf6ae + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_92b597dec171adc4" hs_bindgen_92b597dec171adc4 :: + 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_92b597dec171adc4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_05be7b82d7bf15b2" hs_bindgen_05be7b82d7bf15b2 :: + 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_05be7b82d7bf15b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_3ec3ee1ecd337f24" hs_bindgen_3ec3ee1ecd337f24 :: + 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_3ec3ee1ecd337f24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_847bfff1a58bf9c1" hs_bindgen_847bfff1a58bf9c1 :: + 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_847bfff1a58bf9c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_16cf984f094d6d37" hs_bindgen_16cf984f094d6d37 :: + 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_16cf984f094d6d37 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_1028a46bb2dd80a8" hs_bindgen_1028a46bb2dd80a8 :: + 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_1028a46bb2dd80a8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_403b9c4a6dd64b05" hs_bindgen_403b9c4a6dd64b05 :: + 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_403b9c4a6dd64b05 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_2cdebe6c00d3ad7b" hs_bindgen_2cdebe6c00d3ad7b :: + 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_2cdebe6c00d3ad7b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_ca75d0ed47761de1" hs_bindgen_ca75d0ed47761de1 :: + 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_ca75d0ed47761de1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_334fce31dd2c01be" hs_bindgen_334fce31dd2c01be :: + 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_334fce31dd2c01be + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_2f51c4084bc3f9ca" hs_bindgen_2f51c4084bc3f9ca :: + 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_2f51c4084bc3f9ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_906c61f6efc6d678" hs_bindgen_906c61f6efc6d678 :: + 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_906c61f6efc6d678 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_7111abf608b8b161" hs_bindgen_7111abf608b8b161 :: + 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_7111abf608b8b161 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_50a433d014172c01" hs_bindgen_50a433d014172c01 :: + 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_50a433d014172c01 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_64707c1db3c3ae5b" hs_bindgen_64707c1db3c3ae5b :: + 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_64707c1db3c3ae5b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_91c3b4ab88336853" hs_bindgen_91c3b4ab88336853 :: + 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_91c3b4ab88336853 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_a8a40d00df47e948" hs_bindgen_a8a40d00df47e948 :: + 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_a8a40d00df47e948 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_1d2d76f2a9114b17" hs_bindgen_1d2d76f2a9114b17 :: + 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_1d2d76f2a9114b17 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_488b88148704efc6" hs_bindgen_488b88148704efc6 :: + 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_488b88148704efc6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_0680da5c97f13aa3" hs_bindgen_0680da5c97f13aa3 :: + 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_0680da5c97f13aa3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_dfb447f9d33c4ac3" hs_bindgen_dfb447f9d33c4ac3 :: + 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_dfb447f9d33c4ac3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_01c5229a254f92b4" hs_bindgen_01c5229a254f92b4 :: + 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_01c5229a254f92b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_8f607e7a109cbdd8" hs_bindgen_8f607e7a109cbdd8 :: + 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_8f607e7a109cbdd8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_beb04a00bf54f195" hs_bindgen_beb04a00bf54f195 :: + 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_beb04a00bf54f195 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_62df2e3b0d6add72" hs_bindgen_62df2e3b0d6add72 :: + 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_62df2e3b0d6add72 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_f9caf4e71d2bc112" hs_bindgen_f9caf4e71d2bc112 :: + 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_f9caf4e71d2bc112 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_8e864cac660fc6b0" hs_bindgen_8e864cac660fc6b0 :: + 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_8e864cac660fc6b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_8132b40a4910fd40" hs_bindgen_8132b40a4910fd40 :: + 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_8132b40a4910fd40 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_82a25c975347f386" hs_bindgen_82a25c975347f386 :: + 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_82a25c975347f386 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_e2ac42d226170da8" hs_bindgen_e2ac42d226170da8 :: + 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_e2ac42d226170da8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_627100aa8556bd1f" hs_bindgen_627100aa8556bd1f :: + 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_627100aa8556bd1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_abe949285e2a06c7" hs_bindgen_abe949285e2a06c7 :: + 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_abe949285e2a06c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_d54dfc06ac5bc211" hs_bindgen_d54dfc06ac5bc211 :: + 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_d54dfc06ac5bc211 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_09907c0ff3522bb6" hs_bindgen_09907c0ff3522bb6 :: + 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_09907c0ff3522bb6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_8dfc2cde7745bdad" hs_bindgen_8dfc2cde7745bdad :: + 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_8dfc2cde7745bdad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_5370b07464fe2652" hs_bindgen_5370b07464fe2652 :: + 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_5370b07464fe2652 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_66486154e457a104" hs_bindgen_66486154e457a104 :: + 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_66486154e457a104 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_4c4348722400f70f" hs_bindgen_4c4348722400f70f :: + 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_4c4348722400f70f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_016910c7f082939e" hs_bindgen_016910c7f082939e :: + 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_016910c7f082939e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_350ef34a99841572" hs_bindgen_350ef34a99841572 :: + 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_350ef34a99841572 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_140ce3eb2d582800" hs_bindgen_140ce3eb2d582800 :: + 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_140ce3eb2d582800 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_ce16ccb1394a91e4" hs_bindgen_ce16ccb1394a91e4 :: + 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_ce16ccb1394a91e4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_6bbb88f1cb1d794d" hs_bindgen_6bbb88f1cb1d794d :: + 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_6bbb88f1cb1d794d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_dfe5414cebb21993" hs_bindgen_dfe5414cebb21993 :: + 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_dfe5414cebb21993 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_bab3949f273fd2a1" hs_bindgen_bab3949f273fd2a1 :: + 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_bab3949f273fd2a1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_cf0b1308796ee031" hs_bindgen_cf0b1308796ee031 :: + 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_cf0b1308796ee031 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_86614356f83104a3" hs_bindgen_86614356f83104a3 :: + 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_86614356f83104a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_dcba29cf07612a1c" hs_bindgen_dcba29cf07612a1c :: + 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_dcba29cf07612a1c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_4fd518d4b30102cb" hs_bindgen_4fd518d4b30102cb :: + 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_4fd518d4b30102cb + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_d1cd76352d281def" hs_bindgen_d1cd76352d281def :: + 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_d1cd76352d281def + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_c9873a4495fada4c" hs_bindgen_c9873a4495fada4c :: + 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_c9873a4495fada4c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_5674745d2d89c861" hs_bindgen_5674745d2d89c861 :: + 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_5674745d2d89c861 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_920e94af3b3a9e11" hs_bindgen_920e94af3b3a9e11 :: + 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_920e94af3b3a9e11 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_3fc8f4a70480aee6" hs_bindgen_3fc8f4a70480aee6 :: + 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_3fc8f4a70480aee6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_0340d2307479277e" hs_bindgen_0340d2307479277e :: + 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_0340d2307479277e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_01570f8dd21bd953" hs_bindgen_01570f8dd21bd953 :: + 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_01570f8dd21bd953 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_a802676e9751abb1" hs_bindgen_a802676e9751abb1 :: + 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_a802676e9751abb1 + +{-| + + 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_a802676e9751abb1 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_1e7e03ad61b35599" hs_bindgen_1e7e03ad61b35599 :: + 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_1e7e03ad61b35599 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_223a5f4a2eb2b697" hs_bindgen_223a5f4a2eb2b697 :: + 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_223a5f4a2eb2b697 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_d52b358620183986" hs_bindgen_d52b358620183986 :: + 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_d52b358620183986 + +{-| __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_d52b358620183986 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_a5cbffa220222941" hs_bindgen_a5cbffa220222941 :: + 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_a5cbffa220222941 + +{-| 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_a5cbffa220222941 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_a33fc9837c32ae53" hs_bindgen_a33fc9837c32ae53 :: + 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_a33fc9837c32ae53 + +{-| __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_a33fc9837c32ae53 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_eb256b8e4e5480ce" hs_bindgen_eb256b8e4e5480ce :: + 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_eb256b8e4e5480ce + +{-| __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_eb256b8e4e5480ce x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_87e400db025bd9a4" hs_bindgen_87e400db025bd9a4 :: + 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_87e400db025bd9a4 + +{-| 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_87e400db025bd9a4 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_4ad1cfa41075d8f7" hs_bindgen_4ad1cfa41075d8f7 :: + 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_4ad1cfa41075d8f7 + +{-| 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_4ad1cfa41075d8f7 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_9_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_934df1c48c3b303b" hs_bindgen_934df1c48c3b303b :: + 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_934df1c48c3b303b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_db3f5b695214640a" hs_bindgen_db3f5b695214640a :: + 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_db3f5b695214640a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_ec267650cc9e13af" hs_bindgen_ec267650cc9e13af :: + 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_ec267650cc9e13af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_fe53f73a2f25923f" hs_bindgen_fe53f73a2f25923f :: + 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_fe53f73a2f25923f + +{-| 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_fe53f73a2f25923f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_0d8ea958d4456059" hs_bindgen_0d8ea958d4456059 :: + 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_0d8ea958d4456059 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_0e4dafe595a5fef2" hs_bindgen_0e4dafe595a5fef2 :: + 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_0e4dafe595a5fef2 + +{-| 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_0e4dafe595a5fef2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_5af1a79a6ad02dbb" hs_bindgen_5af1a79a6ad02dbb :: + 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_5af1a79a6ad02dbb + +{-| 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_5af1a79a6ad02dbb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_f2bc5fa6b8f5f5bc" hs_bindgen_f2bc5fa6b8f5f5bc :: + 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_f2bc5fa6b8f5f5bc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_c7d64de5f6ef1e07" hs_bindgen_c7d64de5f6ef1e07 :: + 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_c7d64de5f6ef1e07 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_d898a09ee3b62a1f" hs_bindgen_d898a09ee3b62a1f :: + 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_d898a09ee3b62a1f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_2a14e8fb6761e6ce" hs_bindgen_2a14e8fb6761e6ce :: + 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_2a14e8fb6761e6ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_166788bec223ded5" hs_bindgen_166788bec223ded5 :: + 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:937: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_166788bec223ded5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_1bc914aaec207e33" hs_bindgen_1bc914aaec207e33 :: + 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:942:28@ + +__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_1bc914aaec207e33 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_c9bb5e048d1a5aff" hs_bindgen_c9bb5e048d1a5aff :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:947:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_c9bb5e048d1a5aff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_0dfe452792f32ec6" hs_bindgen_0dfe452792f32ec6 :: + 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:952: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_0dfe452792f32ec6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_8fb3ad7237fa68e6" hs_bindgen_8fb3ad7237fa68e6 :: + 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:957: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_8fb3ad7237fa68e6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_3b387103efa8e6f1" hs_bindgen_3b387103efa8e6f1 :: + 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:962: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_3b387103efa8e6f1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_91b65732b1098365" hs_bindgen_91b65732b1098365 :: + 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:968: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_91b65732b1098365 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_e5e6150b1c689a43" hs_bindgen_e5e6150b1c689a43 :: + 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:973: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_e5e6150b1c689a43 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_4f0ddf91d0e45ba5" hs_bindgen_4f0ddf91d0e45ba5 :: + 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:978: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_4f0ddf91d0e45ba5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_7433b702a48e8bed" hs_bindgen_7433b702a48e8bed :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:983: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_7433b702a48e8bed + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_66cb11784ad1f155" hs_bindgen_66cb11784ad1f155 :: + 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_66cb11784ad1f155 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:988: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_66cb11784ad1f155 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_fa3c5695263097f7" hs_bindgen_fa3c5695263097f7 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:993: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_fa3c5695263097f7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_dbd3e1b7ede29f1e" hs_bindgen_dbd3e1b7ede29f1e :: + 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:1000: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_dbd3e1b7ede29f1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_2534bbda3c8853c3" hs_bindgen_2534bbda3c8853c3 :: + 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:1005: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_2534bbda3c8853c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_f740daeefa5ecec4" hs_bindgen_f740daeefa5ecec4 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1007: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_f740daeefa5ecec4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_cff8f7995aa578c1" hs_bindgen_cff8f7995aa578c1 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1009: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_cff8f7995aa578c1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_ef6aeb3f21adf6ff" hs_bindgen_ef6aeb3f21adf6ff :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1011: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_ef6aeb3f21adf6ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_37025907d58b9ee0" hs_bindgen_37025907d58b9ee0 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1012: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_37025907d58b9ee0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_6b32985f5785d1d2" hs_bindgen_6b32985f5785d1d2 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1014: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_6b32985f5785d1d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_b50de73ce89f13a3" hs_bindgen_b50de73ce89f13a3 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1015: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_b50de73ce89f13a3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_5e9f74ca9e1b61d0" hs_bindgen_5e9f74ca9e1b61d0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1017: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_5e9f74ca9e1b61d0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_c25af3cd590345a7" hs_bindgen_c25af3cd590345a7 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1018: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_c25af3cd590345a7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_b4868d36da0e310c" hs_bindgen_b4868d36da0e310c :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1019: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_b4868d36da0e310c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_dc8d76514a675ea0" hs_bindgen_dc8d76514a675ea0 :: + 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:1022: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_dc8d76514a675ea0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_c72c3b363a318381" hs_bindgen_c72c3b363a318381 :: + 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:1025: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_c72c3b363a318381 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_596f8ac9e8e3ac47" hs_bindgen_596f8ac9e8e3ac47 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1032: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_596f8ac9e8e3ac47 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_a6726c125e798071" hs_bindgen_a6726c125e798071 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1039: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_a6726c125e798071 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_ebb3cf67257e0f70" hs_bindgen_ebb3cf67257e0f70 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1044: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_ebb3cf67257e0f70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_85b26400aacb0bf6" hs_bindgen_85b26400aacb0bf6 :: + 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:1048: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_85b26400aacb0bf6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_7c56bf66278952a4" hs_bindgen_7c56bf66278952a4 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1050: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_7c56bf66278952a4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_0770a166adcbe863" hs_bindgen_0770a166adcbe863 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1051: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_0770a166adcbe863 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_d3b0111022529fe5" hs_bindgen_d3b0111022529fe5 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1053: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_d3b0111022529fe5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_5d4d9377ca0998ce" hs_bindgen_5d4d9377ca0998ce :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1055: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_5d4d9377ca0998ce + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_301e38c22d19e84c" hs_bindgen_301e38c22d19e84c :: + 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:1058: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_301e38c22d19e84c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_30902d8751d27d1d" hs_bindgen_30902d8751d27d1d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1060: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_30902d8751d27d1d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_269cd563b8d7c11e" hs_bindgen_269cd563b8d7c11e :: + 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:1067: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_269cd563b8d7c11e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_d526aab2d0387f85" hs_bindgen_d526aab2d0387f85 :: + 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:1074: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_d526aab2d0387f85 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_52e7ee8418f17b56" hs_bindgen_52e7ee8418f17b56 :: + 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:1079: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_52e7ee8418f17b56 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_86da1d961514665d" hs_bindgen_86da1d961514665d :: + 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:1084: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_86da1d961514665d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_45ee3b7cbc8dd0b5" hs_bindgen_45ee3b7cbc8dd0b5 :: + 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:1104: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_45ee3b7cbc8dd0b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_37abd4dc099a175d" hs_bindgen_37abd4dc099a175d :: + 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:1115: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_37abd4dc099a175d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_ac6fa20bb6f70e24" hs_bindgen_ac6fa20bb6f70e24 :: + 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:1126:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_ac6fa20bb6f70e24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_bbdb77b2440ed67d" hs_bindgen_bbdb77b2440ed67d :: + 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)/__]: hanlder 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:1134:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: hanlder 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_bbdb77b2440ed67d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_3b20303b5481305d" hs_bindgen_3b20303b5481305d :: + 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:1140: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_3b20303b5481305d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_65cc3fc60ded7745" hs_bindgen_65cc3fc60ded7745 :: + 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:1145: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_65cc3fc60ded7745 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_62bd02c737951603" hs_bindgen_62bd02c737951603 :: + 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:1150: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_62bd02c737951603 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_518038ac38037a3a" hs_bindgen_518038ac38037a3a :: + 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:1157: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_518038ac38037a3a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_d779273c3e78523c" hs_bindgen_d779273c3e78523c :: + 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:1164: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_d779273c3e78523c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_24ac25c008c26fd1" hs_bindgen_24ac25c008c26fd1 :: + 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:1175: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_24ac25c008c26fd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_82faad6456c23916" hs_bindgen_82faad6456c23916 :: + 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:1182: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_82faad6456c23916 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_31ca912db8fd7a7f" hs_bindgen_31ca912db8fd7a7f :: + 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:1189: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_31ca912db8fd7a7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_663051516c1f9205" hs_bindgen_663051516c1f9205 :: + 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:1205: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_663051516c1f9205 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_f6d03a0b8b2a686c" hs_bindgen_f6d03a0b8b2a686c :: + 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:1221: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_f6d03a0b8b2a686c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_b2ab0aea9c0e3c02" hs_bindgen_b2ab0aea9c0e3c02 :: + 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:1229: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_b2ab0aea9c0e3c02 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_197743f789327c92" hs_bindgen_197743f789327c92 :: + 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:1237: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_197743f789327c92 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_f0a54b11992d2b69" hs_bindgen_f0a54b11992d2b69 :: + 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:1245: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_f0a54b11992d2b69 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_7d47d516c058428f" hs_bindgen_7d47d516c058428f :: + 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:1251: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_7d47d516c058428f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_700b7e449a51d10b" hs_bindgen_700b7e449a51d10b :: + 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:1257: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_700b7e449a51d10b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_68ea32ab01c713c7" hs_bindgen_68ea32ab01c713c7 :: + 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:1262: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_68ea32ab01c713c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_79f754a0dcf64215" hs_bindgen_79f754a0dcf64215 :: + 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:1267: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_79f754a0dcf64215 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_ecc7f160bd591462" hs_bindgen_ecc7f160bd591462 :: + 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:1272: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_ecc7f160bd591462 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_99cc8ac03ea7ff48" hs_bindgen_99cc8ac03ea7ff48 :: + 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:1277: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_99cc8ac03ea7ff48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_90c7eaafdba0d510" hs_bindgen_90c7eaafdba0d510 :: + 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:1282: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_90c7eaafdba0d510 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_ef2e98c3861b7b7c" hs_bindgen_ef2e98c3861b7b7c :: + 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:1287: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_ef2e98c3861b7b7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_2f33ee9358d08709" hs_bindgen_2f33ee9358d08709 :: + 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:1292: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_2f33ee9358d08709 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_bde09be50b2e268c" hs_bindgen_bde09be50b2e268c :: + 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:1299: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_bde09be50b2e268c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_4942048a79e964a5" hs_bindgen_4942048a79e964a5 :: + 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:1315: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_4942048a79e964a5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_be5b739b268fb52d" hs_bindgen_be5b739b268fb52d :: + 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:1325: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_be5b739b268fb52d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_466274684d688ef4" hs_bindgen_466274684d688ef4 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1329: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_466274684d688ef4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_8594a6131cd9d80c" hs_bindgen_8594a6131cd9d80c :: + 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:1332: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_8594a6131cd9d80c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_b10ef93b1f27ce9f" hs_bindgen_b10ef93b1f27ce9f :: + 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:1334: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_b10ef93b1f27ce9f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_dae2a1636c4197c8" hs_bindgen_dae2a1636c4197c8 :: + 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:1336: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_dae2a1636c4197c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_23d650417f0472c7" hs_bindgen_23d650417f0472c7 :: + 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:1338: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_23d650417f0472c7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_f20a4deeae048e31" hs_bindgen_f20a4deeae048e31 :: + 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:1340: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_f20a4deeae048e31 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_aae6f07e1d5d3250" hs_bindgen_aae6f07e1d5d3250 :: + 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:1360: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_aae6f07e1d5d3250 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_45cc7f4ee3cad364" hs_bindgen_45cc7f4ee3cad364 :: + 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:1382: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_45cc7f4ee3cad364 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_fc2a506384f20a91" hs_bindgen_fc2a506384f20a91 :: + 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_fc2a506384f20a91 + +{-| 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:1390: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_fc2a506384f20a91 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_b9a7b577124aee61" hs_bindgen_b9a7b577124aee61 :: + 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:1395:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_b9a7b577124aee61 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_e0f829e2216d0993" hs_bindgen_e0f829e2216d0993 :: + 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:1409: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_e0f829e2216d0993 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_cae9c61565608d04" hs_bindgen_cae9c61565608d04 :: + 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:1414: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_cae9c61565608d04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_21e5e3939835687b" hs_bindgen_21e5e3939835687b :: + 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:1419: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_21e5e3939835687b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_c3f67533c8638c1b" hs_bindgen_c3f67533c8638c1b :: + 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:1424: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_c3f67533c8638c1b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_c1cd383aa3d2e5c4" hs_bindgen_c1cd383aa3d2e5c4 :: + 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:1426: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_c1cd383aa3d2e5c4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_17ed479003c79617" hs_bindgen_17ed479003c79617 :: + 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:1433: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_17ed479003c79617 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_4ed5c240d547e46d" hs_bindgen_4ed5c240d547e46d :: + 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:1449: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_4ed5c240d547e46d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_9c10c8d9dac0ee3d" hs_bindgen_9c10c8d9dac0ee3d :: + 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:1465: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_9c10c8d9dac0ee3d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_7299a38f32070d24" hs_bindgen_7299a38f32070d24 :: + 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:1482: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_7299a38f32070d24 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_5b33cedd27815133" hs_bindgen_5b33cedd27815133 :: + 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:1497: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_5b33cedd27815133 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_d763bb0544d2542a" hs_bindgen_d763bb0544d2542a :: + 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:1513: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_d763bb0544d2542a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_c41d0dfd87c9d925" hs_bindgen_c41d0dfd87c9d925 :: + 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:1528: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_c41d0dfd87c9d925 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_3c9525987ceeebf3" hs_bindgen_3c9525987ceeebf3 :: + 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_3c9525987ceeebf3 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1539: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_3c9525987ceeebf3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_91e9213b219fdb4e" hs_bindgen_91e9213b219fdb4e :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1541: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_91e9213b219fdb4e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_7f111e9f5925bed9" hs_bindgen_7f111e9f5925bed9 :: + 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:1544: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_7f111e9f5925bed9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_0d2d73c4fced0a19" hs_bindgen_0d2d73c4fced0a19 :: + 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:1549: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_0d2d73c4fced0a19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_52fcc31e2cdd968c" hs_bindgen_52fcc31e2cdd968c :: + 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:1554: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_52fcc31e2cdd968c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_aac134ba0385e503" hs_bindgen_aac134ba0385e503 :: + 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:1559: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_aac134ba0385e503 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_d793581459382306" hs_bindgen_d793581459382306 :: + 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:1561: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_d793581459382306 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_5f8f07de99c4436e" hs_bindgen_5f8f07de99c4436e :: + 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:1566: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_5f8f07de99c4436e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_7ae595739f2900bd" hs_bindgen_7ae595739f2900bd :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1568: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_7ae595739f2900bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_0827facb2fe0bbb1" hs_bindgen_0827facb2fe0bbb1 :: + 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:1571: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_0827facb2fe0bbb1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_e7f48a46849c3b20" hs_bindgen_e7f48a46849c3b20 :: + 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:1576:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_e7f48a46849c3b20 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_29d3cef2aa82d805" hs_bindgen_29d3cef2aa82d805 :: + 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:1581: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_29d3cef2aa82d805 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_9ab228d5d98067ba" hs_bindgen_9ab228d5d98067ba :: + 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:1583: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_9ab228d5d98067ba + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_4a71ff0b1257fe82" hs_bindgen_4a71ff0b1257fe82 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1589: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_4a71ff0b1257fe82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_87112fba288079a0" hs_bindgen_87112fba288079a0 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1592: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_87112fba288079a0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_64d129bfc3d8165d" hs_bindgen_64d129bfc3d8165d :: + 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:1599: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_64d129bfc3d8165d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_79be82d18239c3b0" hs_bindgen_79be82d18239c3b0 :: + 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:1606: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_79be82d18239c3b0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_2726d9c251f80710" hs_bindgen_2726d9c251f80710 :: + 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:1611: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_2726d9c251f80710 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_7df87beb231e2606" hs_bindgen_7df87beb231e2606 :: + 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_7df87beb231e2606 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1613: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_7df87beb231e2606 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_4301116df5ff3df6" hs_bindgen_4301116df5ff3df6 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1616: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_4301116df5ff3df6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_0cb4a7096ebaa73b" hs_bindgen_0cb4a7096ebaa73b :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1618: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_0cb4a7096ebaa73b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_79f24173d45a1fc5" hs_bindgen_79f24173d45a1fc5 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1620: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_79f24173d45a1fc5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_cb595d81472133db" hs_bindgen_cb595d81472133db :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1622: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_cb595d81472133db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_3ecaedb85ea8f50d" hs_bindgen_3ecaedb85ea8f50d :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1624: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_3ecaedb85ea8f50d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_e2dd2bf7e9cea1af" hs_bindgen_e2dd2bf7e9cea1af :: + 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:1627: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_e2dd2bf7e9cea1af + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_b232739f0364a847" hs_bindgen_b232739f0364a847 :: + 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:1629: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_b232739f0364a847 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_877794bb664396ca" hs_bindgen_877794bb664396ca :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1632: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_877794bb664396ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_a39904ca36b90e2b" hs_bindgen_a39904ca36b90e2b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1634: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_a39904ca36b90e2b + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_3bc1ffe9824dd939" hs_bindgen_3bc1ffe9824dd939 :: + 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:1640: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_3bc1ffe9824dd939 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_75e5a208e1713fb8" hs_bindgen_75e5a208e1713fb8 :: + 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:1643: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_75e5a208e1713fb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_a06751ef79781cf7" hs_bindgen_a06751ef79781cf7 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1646: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_a06751ef79781cf7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_236ea947a2abc10e" hs_bindgen_236ea947a2abc10e :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1649: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_236ea947a2abc10e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_76fff31f84d51189" hs_bindgen_76fff31f84d51189 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1651: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_76fff31f84d51189 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_befb2cd84130a123" hs_bindgen_befb2cd84130a123 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1653: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_befb2cd84130a123 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_cdb1dd569a9a30e9" hs_bindgen_cdb1dd569a9a30e9 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1655: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_cdb1dd569a9a30e9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_773adb1f49640e06" hs_bindgen_773adb1f49640e06 :: + 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:1670: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_773adb1f49640e06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_5765dd5128c1b5dd" hs_bindgen_5765dd5128c1b5dd :: + 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:1684: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_5765dd5128c1b5dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_aa359de0c47e8baf" hs_bindgen_aa359de0c47e8baf :: + 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:1702: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_aa359de0c47e8baf + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_88cde7f1858f6d77" hs_bindgen_88cde7f1858f6d77 :: + 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:1717: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_88cde7f1858f6d77 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_b3d21b93f6083688" hs_bindgen_b3d21b93f6083688 :: + 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_b3d21b93f6083688 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1723: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_b3d21b93f6083688 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_987c15d878a770db" hs_bindgen_987c15d878a770db :: + 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_987c15d878a770db + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1725: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_987c15d878a770db x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_9be263b256bf5db5" hs_bindgen_9be263b256bf5db5 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1728: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_9be263b256bf5db5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_f2a32526d4e1c25f" hs_bindgen_f2a32526d4e1c25f :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1731: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_f2a32526d4e1c25f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_bc13193a6405b971" hs_bindgen_bc13193a6405b971 :: + 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_bc13193a6405b971 + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1737: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_bc13193a6405b971 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_6ae85b84186c78eb" hs_bindgen_6ae85b84186c78eb :: + 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_6ae85b84186c78eb + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1739: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_6ae85b84186c78eb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_2be0fdac0909ac06" hs_bindgen_2be0fdac0909ac06 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1742: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_2be0fdac0909ac06 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_3f22ba92e1f8188f" hs_bindgen_3f22ba92e1f8188f :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1745: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_3f22ba92e1f8188f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_76dee98b45118edb" hs_bindgen_76dee98b45118edb :: + 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_76dee98b45118edb + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1751: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_76dee98b45118edb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_dbb2472bbedce689" hs_bindgen_dbb2472bbedce689 :: + 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_dbb2472bbedce689 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1753: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_dbb2472bbedce689 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_d4506ae965440776" hs_bindgen_d4506ae965440776 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1756: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_d4506ae965440776 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_75f826b6593780c3" hs_bindgen_75f826b6593780c3 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1759: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_75f826b6593780c3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_10d73039285044b0" hs_bindgen_10d73039285044b0 :: + 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_10d73039285044b0 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1765: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_10d73039285044b0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_92945ac156a15f35" hs_bindgen_92945ac156a15f35 :: + 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_92945ac156a15f35 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1767: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_92945ac156a15f35 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_763b9eb00a37dcde" hs_bindgen_763b9eb00a37dcde :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1770: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_763b9eb00a37dcde + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_8f672a618df850fd" hs_bindgen_8f672a618df850fd :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1773: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_8f672a618df850fd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_7874ae985f6c3e9b" hs_bindgen_7874ae985f6c3e9b :: + 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_7874ae985f6c3e9b + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1780: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_7874ae985f6c3e9b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_45a5261aeb779208" hs_bindgen_45a5261aeb779208 :: + 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_45a5261aeb779208 + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1783: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_45a5261aeb779208 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_85ac994d8b9ab02d" hs_bindgen_85ac994d8b9ab02d :: + 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_85ac994d8b9ab02d + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1794: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_85ac994d8b9ab02d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_41e988498cbfaf79" hs_bindgen_41e988498cbfaf79 :: + 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_41e988498cbfaf79 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1797: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_41e988498cbfaf79 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_ce2b6d2071906ea2" hs_bindgen_ce2b6d2071906ea2 :: + 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:1801: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_ce2b6d2071906ea2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_773edcdc37c47c45" hs_bindgen_773edcdc37c47c45 :: + 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:1805: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_773edcdc37c47c45 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_3a6628b9f48d67f2" hs_bindgen_3a6628b9f48d67f2 :: + 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_3a6628b9f48d67f2 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1812: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_3a6628b9f48d67f2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_95c0b4a77b4f6346" hs_bindgen_95c0b4a77b4f6346 :: + 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_95c0b4a77b4f6346 + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1815: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_95c0b4a77b4f6346 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_04044ff729cc86d4" hs_bindgen_04044ff729cc86d4 :: + 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_04044ff729cc86d4 + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1822: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_04044ff729cc86d4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_2247bf50f60146d3" hs_bindgen_2247bf50f60146d3 :: + 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_2247bf50f60146d3 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1828: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_2247bf50f60146d3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_f31ab56d38204af9" hs_bindgen_f31ab56d38204af9 :: + 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_f31ab56d38204af9 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1838: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_f31ab56d38204af9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_c920fd26533b215e" hs_bindgen_c920fd26533b215e :: + 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_c920fd26533b215e + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1841: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_c920fd26533b215e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_52fa11e261c896fc" hs_bindgen_52fa11e261c896fc :: + 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_52fa11e261c896fc + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1848: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_52fa11e261c896fc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_dce7316b51ef58ad" hs_bindgen_dce7316b51ef58ad :: + 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_dce7316b51ef58ad + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1851: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_dce7316b51ef58ad x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_fe3b2cc692af4b7c" hs_bindgen_fe3b2cc692af4b7c :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1857: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_fe3b2cc692af4b7c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_83f82e6c83379d9d" hs_bindgen_83f82e6c83379d9d :: + 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:1860: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_83f82e6c83379d9d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_7f2e89ed349b3cd1" hs_bindgen_7f2e89ed349b3cd1 :: + 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:1863: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_7f2e89ed349b3cd1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_5e38d09846822eb8" hs_bindgen_5e38d09846822eb8 :: + 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:1866: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_5e38d09846822eb8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_d3ed1e2def3ecece" hs_bindgen_d3ed1e2def3ecece :: + 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:1869: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_d3ed1e2def3ecece + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_4b7b6f96c982cb82" hs_bindgen_4b7b6f96c982cb82 :: + 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:1872: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_4b7b6f96c982cb82 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_7b7b2b6b5ab8f0f6" hs_bindgen_7b7b2b6b5ab8f0f6 :: + 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:1875: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_7b7b2b6b5ab8f0f6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_2613b9fcd5acbda7" hs_bindgen_2613b9fcd5acbda7 :: + 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:1879: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_2613b9fcd5acbda7 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_9f6d76d0731335b8" hs_bindgen_9f6d76d0731335b8 :: + 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:1883: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_9f6d76d0731335b8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_b4687cbff9787c19" hs_bindgen_b4687cbff9787c19 :: + 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:1886: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_b4687cbff9787c19 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_235e4d75c7e1c5a6" hs_bindgen_235e4d75c7e1c5a6 :: + 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:1893: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_235e4d75c7e1c5a6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_b3b581b388d40e03" hs_bindgen_b3b581b388d40e03 :: + 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:1901: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_b3b581b388d40e03 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_7de54b664c4b33ff" hs_bindgen_7de54b664c4b33ff :: + 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:1906: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_7de54b664c4b33ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_b6b57a317f2165d3" hs_bindgen_b6b57a317f2165d3 :: + 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:1909: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_b6b57a317f2165d3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_4c69b961910873c1" hs_bindgen_4c69b961910873c1 :: + 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_4c69b961910873c1 + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1912: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_4c69b961910873c1 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_4472fa05af3edad9" hs_bindgen_4472fa05af3edad9 :: + 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:1925: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_4472fa05af3edad9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_75ad44de67342a25" hs_bindgen_75ad44de67342a25 :: + 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:1930: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_75ad44de67342a25 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_911dbc0e9261fc70" hs_bindgen_911dbc0e9261fc70 :: + 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:1933: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_911dbc0e9261fc70 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_77c0ad6690fa9c8e" hs_bindgen_77c0ad6690fa9c8e :: + 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_77c0ad6690fa9c8e + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1936: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_77c0ad6690fa9c8e x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_eb56c67e3f6265b4" hs_bindgen_eb56c67e3f6265b4 :: + 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:1948: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_eb56c67e3f6265b4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_24d8b39ddb9ce8d2" hs_bindgen_24d8b39ddb9ce8d2 :: + 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:1953: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_24d8b39ddb9ce8d2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_999c33fb61bd93dd" hs_bindgen_999c33fb61bd93dd :: + 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:1955: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_999c33fb61bd93dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_af8d665a32e14214" hs_bindgen_af8d665a32e14214 :: + 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_af8d665a32e14214 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1957: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_af8d665a32e14214 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_3dd0f473bb6661f9" hs_bindgen_3dd0f473bb6661f9 :: + 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:1960: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_3dd0f473bb6661f9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_71d6e83c025b440d" hs_bindgen_71d6e83c025b440d :: + 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:1968: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_71d6e83c025b440d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_fef6f95f5af5ec74" hs_bindgen_fef6f95f5af5ec74 :: + 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:1976: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_fef6f95f5af5ec74 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_58687016384f09c4" hs_bindgen_58687016384f09c4 :: + 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_58687016384f09c4 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1978: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_58687016384f09c4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_c01be8c9f03e1a52" hs_bindgen_c01be8c9f03e1a52 :: + 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_c01be8c9f03e1a52 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1979: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_c01be8c9f03e1a52 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_8c980d4ff7727c6d" hs_bindgen_8c980d4ff7727c6d :: + 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:1987: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_8c980d4ff7727c6d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_7f6290f5ae486294" hs_bindgen_7f6290f5ae486294 :: + 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:1992: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_7f6290f5ae486294 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_83d6ed912b79fe71" hs_bindgen_83d6ed912b79fe71 :: + 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:1994: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_83d6ed912b79fe71 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_8242a4001305f899" hs_bindgen_8242a4001305f899 :: + 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:1997: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_8242a4001305f899 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_3e51a89c269413c8" hs_bindgen_3e51a89c269413c8 :: + 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:1999: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_3e51a89c269413c8 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_9dc8cd15393508a0" hs_bindgen_9dc8cd15393508a0 :: + 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_9dc8cd15393508a0 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:2002: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_9dc8cd15393508a0 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_3459b66475a33123" hs_bindgen_3459b66475a33123 :: + 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:2016: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_3459b66475a33123 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_c67ff345832b4565" hs_bindgen_c67ff345832b4565 :: + 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:2021: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_c67ff345832b4565 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_7b5a577353092dd4" hs_bindgen_7b5a577353092dd4 :: + 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:2024: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_7b5a577353092dd4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_70064be0c0897220" hs_bindgen_70064be0c0897220 :: + 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:2029: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_70064be0c0897220 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_805c6c297167efd5" hs_bindgen_805c6c297167efd5 :: + 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_805c6c297167efd5 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2033: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_805c6c297167efd5 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_b2b50d13f1da81c6" hs_bindgen_b2b50d13f1da81c6 :: + 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:2046: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_b2b50d13f1da81c6 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_8af2163fafb06ef0" hs_bindgen_8af2163fafb06ef0 :: + 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:2051: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_8af2163fafb06ef0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_8083053b77de10b9" hs_bindgen_8083053b77de10b9 :: + 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:2054: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_8083053b77de10b9 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_9a29f758690502ae" hs_bindgen_9a29f758690502ae :: + 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_9a29f758690502ae + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2059: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_9a29f758690502ae x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_46834c2692c5cee3" hs_bindgen_46834c2692c5cee3 :: + 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:2072: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_46834c2692c5cee3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_ff4f6372af1d98e5" hs_bindgen_ff4f6372af1d98e5 :: + 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_ff4f6372af1d98e5 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2079: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_ff4f6372af1d98e5 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_e2908a93cd55b49f" hs_bindgen_e2908a93cd55b49f :: + 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_e2908a93cd55b49f + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2094: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_e2908a93cd55b49f x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_64d47359770903f6" hs_bindgen_64d47359770903f6 :: + 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_64d47359770903f6 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2109: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_64d47359770903f6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_2c7e5279668377ec" hs_bindgen_2c7e5279668377ec :: + 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:2110: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_2c7e5279668377ec + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_c0d6b10fd81746b5" hs_bindgen_c0d6b10fd81746b5 :: + 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:2115: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_c0d6b10fd81746b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_da966eda1e016263" hs_bindgen_da966eda1e016263 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2117: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_da966eda1e016263 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_312dc271b33c6cd5" hs_bindgen_312dc271b33c6cd5 :: + 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:2120: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_312dc271b33c6cd5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_42813d51aa0edfcc" hs_bindgen_42813d51aa0edfcc :: + 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:2121: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_42813d51aa0edfcc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_ff559f6ab86013e1" hs_bindgen_ff559f6ab86013e1 :: + 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:2123: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_ff559f6ab86013e1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_92d32a3fbe5254dd" hs_bindgen_92d32a3fbe5254dd :: + 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:2124: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_92d32a3fbe5254dd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_615f3dca53ecb2bd" hs_bindgen_615f3dca53ecb2bd :: + 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:2128: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_615f3dca53ecb2bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_8e575db4df3790cc" hs_bindgen_8e575db4df3790cc :: + 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:2130: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_8e575db4df3790cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_31e64fe2ef5e6ed1" hs_bindgen_31e64fe2ef5e6ed1 :: + 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:2131: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_31e64fe2ef5e6ed1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_44d13617eb8607b3" hs_bindgen_44d13617eb8607b3 :: + 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:2132: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_44d13617eb8607b3 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_b41e98b8f066b5bd" hs_bindgen_b41e98b8f066b5bd :: + 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:2134: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_b41e98b8f066b5bd + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_4be7329cf2ea6ea4" hs_bindgen_4be7329cf2ea6ea4 :: + 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:2137: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_4be7329cf2ea6ea4 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_6bbbe2f48746f185" hs_bindgen_6bbbe2f48746f185 :: + 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:2139: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_6bbbe2f48746f185 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_f3a306b3029e97ff" hs_bindgen_f3a306b3029e97ff :: + 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:2143: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_f3a306b3029e97ff + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_72667cb808ce7559" hs_bindgen_72667cb808ce7559 :: + 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:2148: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_72667cb808ce7559 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_526b428f7ca2c269" hs_bindgen_526b428f7ca2c269 :: + 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:2151: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_526b428f7ca2c269 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_fd9264f48f80b102" hs_bindgen_fd9264f48f80b102 :: + 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:2154: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_fd9264f48f80b102 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_e7a7f08b3c1555ca" hs_bindgen_e7a7f08b3c1555ca :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2170: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_e7a7f08b3c1555ca + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_5efed5121515539f" hs_bindgen_5efed5121515539f :: + 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:2176: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_5efed5121515539f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_3b7b958ac1e4fc2d" hs_bindgen_3b7b958ac1e4fc2d :: + 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:2187: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_3b7b958ac1e4fc2d + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_e79063b705b6ecf2" hs_bindgen_e79063b705b6ecf2 :: + 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:2202: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_e79063b705b6ecf2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_2182350eab042c48" hs_bindgen_2182350eab042c48 :: + 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:2210: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_2182350eab042c48 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_1d1d50da2cc666cf" hs_bindgen_1d1d50da2cc666cf :: + 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_1d1d50da2cc666cf + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2212: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_1d1d50da2cc666cf x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_1272d6a73c013432" hs_bindgen_1272d6a73c013432 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2214: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_1272d6a73c013432 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_293223cefd18f5db" hs_bindgen_293223cefd18f5db :: + 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:2220: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_293223cefd18f5db + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_74810c54403fe3cc" hs_bindgen_74810c54403fe3cc :: + 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:2227: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_74810c54403fe3cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_6c1649fbff4f36c5" hs_bindgen_6c1649fbff4f36c5 :: + 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_6c1649fbff4f36c5 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2245: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_6c1649fbff4f36c5 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_beadaf081b8d0785" hs_bindgen_beadaf081b8d0785 :: + 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_beadaf081b8d0785 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2254: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_beadaf081b8d0785 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_555e7ae360c01457" hs_bindgen_555e7ae360c01457 :: + 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_555e7ae360c01457 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2262: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_555e7ae360c01457 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_6004c4f61a5583e6" hs_bindgen_6004c4f61a5583e6 :: + 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_6004c4f61a5583e6 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2272: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_6004c4f61a5583e6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_3057ea4b2541c97d" hs_bindgen_3057ea4b2541c97d :: + 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_3057ea4b2541c97d + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2291: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_3057ea4b2541c97d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_ad908cc527793e1e" hs_bindgen_ad908cc527793e1e :: + 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:2298:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_ad908cc527793e1e + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_ecdbb11383b9c381" hs_bindgen_ecdbb11383b9c381 :: + 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:2304: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_ecdbb11383b9c381 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_628c8c541b1449d1" hs_bindgen_628c8c541b1449d1 :: + 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:2310: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_628c8c541b1449d1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_4e51e5805222ed1e" hs_bindgen_4e51e5805222ed1e :: + 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_4e51e5805222ed1e + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2323: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_4e51e5805222ed1e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_952224d1eab49180" hs_bindgen_952224d1eab49180 :: + 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:2331:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_952224d1eab49180 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_6bfec53abc23ef91" hs_bindgen_6bfec53abc23ef91 :: + 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:2340: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_6bfec53abc23ef91 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_6f2edba1f89cada0" hs_bindgen_6f2edba1f89cada0 :: + 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:2351: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_6f2edba1f89cada0 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_40c9390a10eb0f0d" hs_bindgen_40c9390a10eb0f0d :: + 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_40c9390a10eb0f0d + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2362: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_40c9390a10eb0f0d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_6510953e7a676aad" hs_bindgen_6510953e7a676aad :: + 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:2369:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_6510953e7a676aad + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_83298bfba68c00e7" hs_bindgen_83298bfba68c00e7 :: + 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_83298bfba68c00e7 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2372: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_83298bfba68c00e7 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_9efe85dc17f2ed47" hs_bindgen_9efe85dc17f2ed47 :: + 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_9efe85dc17f2ed47 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2375: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_9efe85dc17f2ed47 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_9c235153ece9e10c" hs_bindgen_9c235153ece9e10c :: + 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:2387: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_9c235153ece9e10c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_a1c4a71e073016b2" hs_bindgen_a1c4a71e073016b2 :: + 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:2395: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_a1c4a71e073016b2 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_d035cf05df063637" hs_bindgen_d035cf05df063637 :: + 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_d035cf05df063637 + +{-| 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:2410: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_d035cf05df063637 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_d0877aad0c35b7b2" hs_bindgen_d0877aad0c35b7b2 :: + 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_d0877aad0c35b7b2 + +{-| 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:2429: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_d0877aad0c35b7b2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_ee245e2ad4c39db9" hs_bindgen_ee245e2ad4c39db9 :: + 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_ee245e2ad4c39db9 + +{-| 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:2445: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_ee245e2ad4c39db9 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_b6f657f60c38cc78" hs_bindgen_b6f657f60c38cc78 :: + 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_b6f657f60c38cc78 + +{-| 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:2472: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_b6f657f60c38cc78 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_9_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_4648fb60dd8860b5" hs_bindgen_4648fb60dd8860b5 :: + 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:2490: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_4648fb60dd8860b5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_f4332c24dbc30bb5" hs_bindgen_f4332c24dbc30bb5 :: + 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:2511: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_f4332c24dbc30bb5 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_4325707b1b19ddf1" hs_bindgen_4325707b1b19ddf1 :: + 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:2532: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_4325707b1b19ddf1 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_479cc076fffefd2c" hs_bindgen_479cc076fffefd2c :: + 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:2557:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: + IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_479cc076fffefd2c + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_42443919b01937cc" hs_bindgen_42443919b01937cc :: + 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:2565: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_42443919b01937cc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_d826ca09207e9acc" hs_bindgen_d826ca09207e9acc :: + 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:2575: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_d826ca09207e9acc + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_0f188867290f1318" hs_bindgen_0f188867290f1318 :: + 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:2586: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_0f188867290f1318 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_40641637d1003f7f" hs_bindgen_40641637d1003f7f :: + 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:2598: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_40641637d1003f7f + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_7b893c99e5324845" hs_bindgen_7b893c99e5324845 :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resouces of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2605: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_7b893c99e5324845 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_d12f62f9527ec88a" hs_bindgen_d12f62f9527ec88a :: + 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:2619: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_d12f62f9527ec88a + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_798dfc64805abf04" hs_bindgen_798dfc64805abf04 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resouces 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:2631: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_798dfc64805abf04 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_d27d330afcd57a30" hs_bindgen_d27d330afcd57a30 :: + 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:2642: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_d27d330afcd57a30 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_4acbb703684b9a67" hs_bindgen_4acbb703684b9a67 :: + 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:2654: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_4acbb703684b9a67 + +-- | __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_9_0_Unsafe_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_55088d77a617c7b9" hs_bindgen_55088d77a617c7b9 :: + 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:2661: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_55088d77a617c7b9 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/FunPtr.hs new file mode 100644 index 00000000..a8dd869d --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/FunPtr.hs @@ -0,0 +1,50 @@ +{-# LANGUAGE CPP #-} + +module Botan.Bindings.Generated.FunPtr ( + 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.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,9,0) +import Botan.Bindings.Generated.Botan_3_9_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,1) +import Botan.Bindings.Generated.Botan_3_8_1.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,0) +import Botan.Bindings.Generated.Botan_3_8_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,1) +import Botan.Bindings.Generated.Botan_3_7_1.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,0) +import Botan.Bindings.Generated.Botan_3_7_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,1) +import Botan.Bindings.Generated.Botan_3_6_1.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,0) +import Botan.Bindings.Generated.Botan_3_6_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,5,0) +import Botan.Bindings.Generated.Botan_3_5_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,4,0) +import Botan.Bindings.Generated.Botan_3_4_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,3,0) +import Botan.Bindings.Generated.Botan_3_3_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,2,0) +import Botan.Bindings.Generated.Botan_3_2_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,1) +import Botan.Bindings.Generated.Botan_3_1_1.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,0) +import Botan.Bindings.Generated.Botan_3_1_0.FunPtr as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,0,0) +import Botan.Bindings.Generated.Botan_3_0_0.FunPtr 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/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Safe.hs new file mode 100644 index 00000000..a96e2f35 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Safe.hs @@ -0,0 +1,50 @@ +{-# LANGUAGE CPP #-} + +module Botan.Bindings.Generated.Safe ( + 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.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,9,0) +import Botan.Bindings.Generated.Botan_3_9_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,1) +import Botan.Bindings.Generated.Botan_3_8_1.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,0) +import Botan.Bindings.Generated.Botan_3_8_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,1) +import Botan.Bindings.Generated.Botan_3_7_1.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,0) +import Botan.Bindings.Generated.Botan_3_7_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,1) +import Botan.Bindings.Generated.Botan_3_6_1.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,0) +import Botan.Bindings.Generated.Botan_3_6_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,5,0) +import Botan.Bindings.Generated.Botan_3_5_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,4,0) +import Botan.Bindings.Generated.Botan_3_4_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,3,0) +import Botan.Bindings.Generated.Botan_3_3_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,2,0) +import Botan.Bindings.Generated.Botan_3_2_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,1) +import Botan.Bindings.Generated.Botan_3_1_1.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,0) +import Botan.Bindings.Generated.Botan_3_1_0.Safe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,0,0) +import Botan.Bindings.Generated.Botan_3_0_0.Safe 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/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Unsafe.hs new file mode 100644 index 00000000..d5c9c910 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Unsafe.hs @@ -0,0 +1,51 @@ +{-# LANGUAGE CPP #-} +{-# LANGUAGE DataKinds #-} + +module Botan.Bindings.Generated.Unsafe ( + 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.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,9,0) +import Botan.Bindings.Generated.Botan_3_9_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,1) +import Botan.Bindings.Generated.Botan_3_8_1.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,0) +import Botan.Bindings.Generated.Botan_3_8_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,1) +import Botan.Bindings.Generated.Botan_3_7_1.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,0) +import Botan.Bindings.Generated.Botan_3_7_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,1) +import Botan.Bindings.Generated.Botan_3_6_1.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,0) +import Botan.Bindings.Generated.Botan_3_6_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,5,0) +import Botan.Bindings.Generated.Botan_3_5_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,4,0) +import Botan.Bindings.Generated.Botan_3_4_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,3,0) +import Botan.Bindings.Generated.Botan_3_3_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,2,0) +import Botan.Bindings.Generated.Botan_3_2_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,1) +import Botan.Bindings.Generated.Botan_3_1_1.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,0) +import Botan.Bindings.Generated.Botan_3_1_0.Unsafe as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,0,0) +import Botan.Bindings.Generated.Botan_3_0_0.Unsafe 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/Botan/Bindings/Bcrypt.hs b/botan-bindings/src/Botan/Bindings/Bcrypt.hs index 8b341985..11c4dd67 100644 --- a/botan-bindings/src/Botan/Bindings/Bcrypt.hs +++ b/botan-bindings/src/Botan/Bindings/Bcrypt.hs @@ -7,59 +7,11 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -Generate and validate Bcrypt password hashes -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.Bcrypt ( - pattern BOTAN_BCRYPT_WORK_FACTOR_FAST - , pattern BOTAN_BCRYPT_WORK_FACTOR_GOOD - , pattern BOTAN_BCRYPT_WORK_FACTOR_STRONG - , botan_bcrypt_generate - , botan_bcrypt_is_valid + Safe.botan_bcrypt_generate + , Safe.botan_bcrypt_is_valid ) where -import Botan.Bindings.Prelude -import Botan.Bindings.RNG - --- TODO: Maybe move to Botan.Low.Bcrypt -pattern BOTAN_BCRYPT_WORK_FACTOR_FAST - , BOTAN_BCRYPT_WORK_FACTOR_GOOD - , BOTAN_BCRYPT_WORK_FACTOR_STRONG - :: (Eq a, Num a) => a - --- | Should not cause noticable CPU usage -pattern BOTAN_BCRYPT_WORK_FACTOR_FAST = 12 - --- | May cause noticable CPU usage -pattern BOTAN_BCRYPT_WORK_FACTOR_GOOD = 14 - --- | May block for several seconds -pattern BOTAN_BCRYPT_WORK_FACTOR_STRONG = 16 - -{- | -Create a password hash using Bcrypt - -Output is formatted bcrypt $2a$... --} -foreign import capi safe "botan/ffi.h botan_bcrypt_generate" - botan_bcrypt_generate - :: Ptr Word8 -- ^ __out__: buffer holding the password hash, should be of length 64 bytes - -> Ptr CSize -- ^ __out_len__: the desired output length in bytes - -> ConstPtr CChar -- ^ __password__: the password - -> BotanRNG -- ^ __rng__: a random number generator - -> CSize -- ^ __work_factor__: how much work to do to slow down guessing attacks - -> Word32 -- ^ __flags__: should be 0 in current API revision, all other uses are reserved - -- and return BOTAN_FFI_ERROR_BAD_FLAG - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Check a previously created password hash -foreign import capi safe "botan/ffi.h botan_bcrypt_is_valid" - botan_bcrypt_is_valid - :: ConstPtr CChar -- ^ __pass__: the password to check against - -> ConstPtr CChar -- ^ __hash__: the stored hash to check against - -> IO CInt -- ^ 0 if if this password/hash combination is valid, - -- 1 if the combination is not valid (but otherwise well formed), - -- negative on error +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/BlockCipher.hs b/botan-bindings/src/Botan/Bindings/BlockCipher.hs index b1014240..5bfc0580 100644 --- a/botan-bindings/src/Botan/Bindings/BlockCipher.hs +++ b/botan-bindings/src/Botan/Bindings/BlockCipher.hs @@ -15,20 +15,21 @@ Ciphers](https://botan.randombit.net/handbook/api_ref/block_cipher.html) section of the C++ API reference. -} -{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE OverloadedStrings #-} module Botan.Bindings.BlockCipher ( - BotanBlockCipherStruct - , BotanBlockCipher (..) - , botan_block_cipher_destroy - , botan_block_cipher_init - , botan_block_cipher_clear + Types.Botan_block_cipher_t(..) + , Types.Botan_block_cipher_struct + , Safe.botan_block_cipher_destroy + , botan_block_cipher_destroy_ptr + , Safe.botan_block_cipher_init + , Safe.botan_block_cipher_clear , botan_block_cipher_set_key - , botan_block_cipher_block_size + , Safe.botan_block_cipher_block_size , botan_block_cipher_encrypt_blocks , botan_block_cipher_decrypt_blocks - , botan_block_cipher_name - , botan_block_cipher_get_keyspec + , Safe.botan_block_cipher_name + , Safe.botan_block_cipher_get_keyspec -- * Available ciphers -- $available-ciphers , pattern BOTAN_BLOCK_CIPHER_AES_128 @@ -57,89 +58,27 @@ module Botan.Bindings.BlockCipher ( , pattern BOTAN_BLOCK_CIPHER_TWOFISH ) where -import Botan.Bindings.Prelude +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) -{------------------------------------------------------------------------------- - Block ciphers --------------------------------------------------------------------------------} --- | Opaque BlockCipher struct -data {-# CTYPE "botan/ffi.h" "struct botan_block_cipher_struct" #-} BotanBlockCipherStruct - --- | Botan BlockCipher object -newtype {-# CTYPE "botan/ffi.h" "botan_block_cipher_t" #-} BotanBlockCipher - = MkBotanBlockCipher { runBotanBlockCipher :: Ptr BotanBlockCipherStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a block cipher object --- --- NOTE: this a binding to the /address/ of the @botan_block_cipher_destroy@ C --- function. -foreign import capi safe "botan/ffi.h &botan_block_cipher_destroy" - botan_block_cipher_destroy - :: FinalizerPtr BotanBlockCipherStruct - --- | Initialize a block cipher object -foreign import capi safe "botan/ffi.h botan_block_cipher_init" - botan_block_cipher_init - :: Ptr BotanBlockCipher -- ^ __bc__ - -> ConstPtr CChar -- ^ __cipher_name__ - -> IO CInt - --- | Reinitializes the block cipher -foreign import capi safe "botan/ffi.h botan_block_cipher_clear" - botan_block_cipher_clear - :: BotanBlockCipher -- ^ __bc__ - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Set the key for a block cipher instance -foreign import capi safe "botan/ffi.h botan_block_cipher_set_key" - botan_block_cipher_set_key - :: BotanBlockCipher -- ^ __bc__ - -> ConstPtr Word8 -- ^ __key[]__ - -> CSize -- ^ __len__ - -> IO CInt - --- | Return the positive block size of this block cipher, or negative to indicate an error -foreign import capi safe "botan/ffi.h botan_block_cipher_block_size" - botan_block_cipher_block_size - :: BotanBlockCipher -- ^ __bc__ - -> IO CInt - --- | Encrypt one or more blocks with the cipher -foreign import capi safe "botan/ffi.h botan_block_cipher_encrypt_blocks" - botan_block_cipher_encrypt_blocks - :: BotanBlockCipher -- ^ __bc__ - -> ConstPtr Word8 -- ^ __in[]__ - -> Ptr Word8 -- ^ __out[]__ - -> CSize -- ^ __blocks__ - -> IO CInt - --- | Decrypt one or more blocks with the cipher -foreign import capi safe "botan/ffi.h botan_block_cipher_decrypt_blocks" - botan_block_cipher_decrypt_blocks - :: BotanBlockCipher -- ^ __bc__ - -> ConstPtr Word8 -- ^ __in[]__ - -> Ptr Word8 -- ^ __out[]__ - -> CSize -- ^ __blocks__ - -> IO CInt - --- | Get the name of this block cipher -foreign import capi safe "botan/ffi.h botan_block_cipher_name" - botan_block_cipher_name - :: BotanBlockCipher -- ^ __cipher__: the object to read - -> Ptr CChar -- ^ __name__: output buffer - -> Ptr CSize -- ^ __name_len__: on input, the length of buffer, on success the number of bytes written - -> IO CInt - --- | Get the key length limits of this block cipher -foreign import capi safe "botan/ffi.h botan_block_cipher_get_keyspec" - botan_block_cipher_get_keyspec - :: BotanBlockCipher -- ^ __cipher__: the object to read - -> Ptr CSize -- ^ __out_minimum_keylength__: if non-NULL, will be set to minimum keylength of cipher - -> Ptr CSize -- ^ __out_maximum_keylength__: if non-NULL, will be set to maximum keylength of cipher - -> Ptr CSize -- ^ __out_keylength_modulo__: if non-NULL will be set to byte multiple of valid keys - -> IO CInt +botan_block_cipher_destroy_ptr :: FunPtr (Types.Botan_block_cipher_t -> IO CInt) +botan_block_cipher_destroy_ptr = FunPtr.botan_block_cipher_destroy + +botan_block_cipher_set_key :: Types.Botan_block_cipher_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_block_cipher_set_key = Safe.botan_block_cipher_set_key_wrapper + +botan_block_cipher_encrypt_blocks :: Types.Botan_block_cipher_t -> ConstPtr Word8 -> Ptr Word8 -> CSize -> IO CInt +botan_block_cipher_encrypt_blocks = Safe.botan_block_cipher_encrypt_blocks_wrapper + +botan_block_cipher_decrypt_blocks :: Types.Botan_block_cipher_t -> ConstPtr Word8 -> Ptr Word8 -> CSize -> IO CInt +botan_block_cipher_decrypt_blocks = Safe.botan_block_cipher_decrypt_blocks_wrapper {------------------------------------------------------------------------------- Available ciphers diff --git a/botan-bindings/src/Botan/Bindings/Cipher.hs b/botan-bindings/src/Botan/Bindings/Cipher.hs new file mode 100644 index 00000000..c20c4cf8 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/Cipher.hs @@ -0,0 +1,114 @@ +{-| +Module : Botan.Bindings.Cipher +Description : Symmetric cipher modes +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +{-# LANGUAGE OverloadedStrings #-} + +module Botan.Bindings.Cipher ( + Types.Botan_cipher_t (..) + , Types.Botan_cipher_struct + , botan_cipher_destroy_ptr + , Types.bOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION + , Types.bOTAN_CIPHER_INIT_FLAG_ENCRYPT + , Types.bOTAN_CIPHER_INIT_FLAG_DECRYPT + , Safe.botan_cipher_init + , Safe.botan_cipher_name + , Safe.botan_cipher_output_length + , Safe.botan_cipher_valid_nonce_length + , Safe.botan_cipher_get_tag_length + , Safe.botan_cipher_get_default_nonce_length + , Safe.botan_cipher_get_update_granularity + , Safe.botan_cipher_get_ideal_update_granularity + , Safe.botan_cipher_query_keylen + , Safe.botan_cipher_get_keyspec + , Safe.botan_cipher_set_key + , Safe.botan_cipher_reset + , Safe.botan_cipher_set_associated_data + , Safe.botan_cipher_start + , Types.bOTAN_CIPHER_UPDATE_FLAG_FINAL + , botan_cipher_update + , Safe.botan_cipher_clear + + , pattern BOTAN_CIPHER_MODE_CBC + , pattern BOTAN_CIPHER_MODE_CFB + , pattern BOTAN_CIPHER_MODE_XTS + + , pattern BOTAN_CBC_PADDING_PKCS7 + , pattern BOTAN_CBC_PADDING_ONE_AND_ZEROS + , pattern BOTAN_CBC_PADDING_X9_23 + , pattern BOTAN_CBC_PADDING_ESP + , pattern BOTAN_CBC_PADDING_CTS + , pattern BOTAN_CBC_PADDING_NO_PADDING + + , pattern BOTAN_AEAD_CHACHA20POLY1305 + + , pattern BOTAN_AEAD_MODE_GCM + , pattern BOTAN_AEAD_MODE_OCB + , pattern BOTAN_AEAD_MODE_EAX + , pattern BOTAN_AEAD_MODE_SIV + , pattern BOTAN_AEAD_MODE_CCM + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Data.Word (Word32, Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_cipher_destroy_ptr :: FunPtr (Types.Botan_cipher_t -> IO CInt) +botan_cipher_destroy_ptr = FunPtr.botan_cipher_destroy + +botan_cipher_update :: Types.Botan_cipher_t -> Word32 -> Ptr Word8 -> CSize -> Ptr CSize -> ConstPtr Word8 -> CSize -> Ptr CSize -> IO CInt +botan_cipher_update = Safe.botan_cipher_update_wrapper + +pattern BOTAN_CIPHER_MODE_CBC + , BOTAN_CIPHER_MODE_CFB + , BOTAN_CIPHER_MODE_XTS + :: (Eq a, IsString a) => a + +pattern BOTAN_CIPHER_MODE_CBC = "CBC" +pattern BOTAN_CIPHER_MODE_CFB = "CFB" +pattern BOTAN_CIPHER_MODE_XTS = "XTS" + +pattern BOTAN_CBC_PADDING_PKCS7 + , BOTAN_CBC_PADDING_ONE_AND_ZEROS + , BOTAN_CBC_PADDING_X9_23 + , BOTAN_CBC_PADDING_ESP + , BOTAN_CBC_PADDING_CTS + , BOTAN_CBC_PADDING_NO_PADDING + :: (Eq a, IsString a) => a + +pattern BOTAN_CBC_PADDING_PKCS7 = "PKCS7" +pattern BOTAN_CBC_PADDING_ONE_AND_ZEROS = "OneAndZeros" +pattern BOTAN_CBC_PADDING_X9_23 = "X9.23" +pattern BOTAN_CBC_PADDING_ESP = "ESP" +pattern BOTAN_CBC_PADDING_CTS = "CTS" +pattern BOTAN_CBC_PADDING_NO_PADDING = "NoPadding" + +pattern BOTAN_AEAD_CHACHA20POLY1305 + :: (Eq a, IsString a) => a + +pattern BOTAN_AEAD_CHACHA20POLY1305 = "ChaCha20Poly1305" + +pattern BOTAN_AEAD_MODE_GCM + , BOTAN_AEAD_MODE_OCB + , BOTAN_AEAD_MODE_EAX + , BOTAN_AEAD_MODE_SIV + , BOTAN_AEAD_MODE_CCM + :: (Eq a, IsString a) => a + +pattern BOTAN_AEAD_MODE_GCM = "GCM" +pattern BOTAN_AEAD_MODE_OCB = "OCB" +pattern BOTAN_AEAD_MODE_EAX = "EAX" +pattern BOTAN_AEAD_MODE_SIV = "SIV" +pattern BOTAN_AEAD_MODE_CCM = "CCM" diff --git a/botan-bindings/src/Botan/Bindings/Cipher.hsc b/botan-bindings/src/Botan/Bindings/Cipher.hsc deleted file mode 100644 index 561a2f0e..00000000 --- a/botan-bindings/src/Botan/Bindings/Cipher.hsc +++ /dev/null @@ -1,274 +0,0 @@ -{-| -Module : Botan.Bindings.Cipher -Description : Symmetric cipher modes -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX - -A block cipher by itself, is only able to securely encrypt a single -data block. To be able to securely encrypt data of arbitrary length, -a mode of operation applies the block cipherโ€™s single block operation -repeatedly to encrypt an entire message. --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.Cipher ( - BotanCipherStruct - , BotanCipher (..) - , botan_cipher_destroy - , pattern BOTAN_CIPHER_MODE_CBC - , pattern BOTAN_CIPHER_MODE_CFB - , pattern BOTAN_CIPHER_MODE_XTS - - , pattern BOTAN_CBC_PADDING_PKCS7 - , pattern BOTAN_CBC_PADDING_ONE_AND_ZEROS - , pattern BOTAN_CBC_PADDING_X9_23 - , pattern BOTAN_CBC_PADDING_ESP - , pattern BOTAN_CBC_PADDING_CTS - , pattern BOTAN_CBC_PADDING_NO_PADDING - - , pattern BOTAN_AEAD_CHACHA20POLY1305 - - , pattern BOTAN_AEAD_MODE_GCM - , pattern BOTAN_AEAD_MODE_OCB - , pattern BOTAN_AEAD_MODE_EAX - , pattern BOTAN_AEAD_MODE_SIV - , pattern BOTAN_AEAD_MODE_CCM - - , pattern BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION - , pattern BOTAN_CIPHER_INIT_FLAG_ENCRYPT - , pattern BOTAN_CIPHER_INIT_FLAG_DECRYPT - , botan_cipher_init - , botan_cipher_name - , botan_cipher_output_length - , botan_cipher_valid_nonce_length - , botan_cipher_get_tag_length - , botan_cipher_get_default_nonce_length - , botan_cipher_get_update_granularity - , botan_cipher_get_ideal_update_granularity - , botan_cipher_query_keylen - , botan_cipher_get_keyspec - , botan_cipher_set_key - , botan_cipher_reset - , botan_cipher_set_associated_data - , botan_cipher_start - , pattern BOTAN_CIPHER_UPDATE_FLAG_NONE - , pattern BOTAN_CIPHER_UPDATE_FLAG_FINAL - , botan_cipher_update - , botan_cipher_clear - ) where - -import Botan.Bindings.Prelude - -#include - --- | Opaque Cipher struct -data {-# CTYPE "botan/ffi.h" "struct botan_cipher_struct" #-} BotanCipherStruct - --- | Botan Cipher object -newtype {-# CTYPE "botan/ffi.h" "botan_cipher_t" #-} BotanCipher - = MkBotanCipher { runBotanCipher :: Ptr BotanCipherStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy the cipher object -foreign import capi safe "botan/ffi.h &botan_cipher_destroy" - botan_cipher_destroy - :: FinalizerPtr BotanCipherStruct - -pattern BOTAN_CIPHER_MODE_CBC - , BOTAN_CIPHER_MODE_CFB - , BOTAN_CIPHER_MODE_XTS - :: (Eq a, IsString a) => a - -pattern BOTAN_CIPHER_MODE_CBC = "CBC" -pattern BOTAN_CIPHER_MODE_CFB = "CFB" -pattern BOTAN_CIPHER_MODE_XTS = "XTS" - -pattern BOTAN_CBC_PADDING_PKCS7 - , BOTAN_CBC_PADDING_ONE_AND_ZEROS - , BOTAN_CBC_PADDING_X9_23 - , BOTAN_CBC_PADDING_ESP - , BOTAN_CBC_PADDING_CTS - , BOTAN_CBC_PADDING_NO_PADDING - :: (Eq a, IsString a) => a - -pattern BOTAN_CBC_PADDING_PKCS7 = "PKCS7" -pattern BOTAN_CBC_PADDING_ONE_AND_ZEROS = "OneAndZeros" -pattern BOTAN_CBC_PADDING_X9_23 = "X9.23" -pattern BOTAN_CBC_PADDING_ESP = "ESP" -pattern BOTAN_CBC_PADDING_CTS = "CTS" -pattern BOTAN_CBC_PADDING_NO_PADDING = "NoPadding" - -pattern BOTAN_AEAD_CHACHA20POLY1305 - :: (Eq a, IsString a) => a - -pattern BOTAN_AEAD_CHACHA20POLY1305 = "ChaCha20Poly1305" - -pattern BOTAN_AEAD_MODE_GCM - , BOTAN_AEAD_MODE_OCB - , BOTAN_AEAD_MODE_EAX - , BOTAN_AEAD_MODE_SIV - , BOTAN_AEAD_MODE_CCM - :: (Eq a, IsString a) => a - -pattern BOTAN_AEAD_MODE_GCM = "GCM" -pattern BOTAN_AEAD_MODE_OCB = "OCB" -pattern BOTAN_AEAD_MODE_EAX = "EAX" -pattern BOTAN_AEAD_MODE_SIV = "SIV" -pattern BOTAN_AEAD_MODE_CCM = "CCM" - -pattern BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION - , BOTAN_CIPHER_INIT_FLAG_ENCRYPT - , BOTAN_CIPHER_INIT_FLAG_DECRYPT - :: (Eq a, Num a) => a -pattern BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION = #const BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION -pattern BOTAN_CIPHER_INIT_FLAG_ENCRYPT = #const BOTAN_CIPHER_INIT_FLAG_ENCRYPT -pattern BOTAN_CIPHER_INIT_FLAG_DECRYPT = #const BOTAN_CIPHER_INIT_FLAG_DECRYPT - --- | Initialize a cipher object -foreign import capi safe "botan/ffi.h botan_cipher_init" - botan_cipher_init - :: Ptr BotanCipher -- ^ __cipher__ - -> ConstPtr CChar -- ^ __name__ - -> Word32 -- ^ __flags__ - -> IO CInt - --- | Return the name of the cipher object -foreign import capi safe "botan/ffi.h botan_cipher_name" - botan_cipher_name - :: BotanCipher -- ^ __cipher__ - -> Ptr CChar -- ^ __name__ - -> Ptr CSize -- ^ __name_len__ - -> IO CInt - --- | Return the output length of this cipher, for a particular input length. -foreign import capi safe "botan/ffi.h botan_cipher_output_length" - botan_cipher_output_length - :: BotanCipher -- ^ __cipher__ - -> CSize -- ^ __in_len__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - --- | Return if the specified nonce length is valid for this cipher --- (0 / SUCCESS if valid, 1 / INVALID_IDENTIFIER if not) -foreign import capi safe "botan/ffi.h botan_cipher_valid_nonce_length" - botan_cipher_valid_nonce_length - :: BotanCipher -- ^ __cipher__ - -> CSize -- ^ __nl__ - -> IO CInt - --- | Get the tag length of the cipher (0 for non-AEAD modes) -foreign import capi safe "botan/ffi.h botan_cipher_get_tag_length" - botan_cipher_get_tag_length - :: BotanCipher -- ^ __cipher__ - -> Ptr CSize -- ^ __tag_size__ - -> IO CInt - --- | Get the default nonce length of this cipher -foreign import capi safe "botan/ffi.h botan_cipher_get_default_nonce_length" - botan_cipher_get_default_nonce_length - :: BotanCipher -- ^ __cipher__ - -> Ptr CSize -- ^ __nl__ - -> IO CInt - --- | Return the update granularity of the cipher; --- botan_cipher_update must be called with blocks of this size, except for the final. -foreign import capi safe "botan/ffi.h botan_cipher_get_update_granularity" - botan_cipher_get_update_granularity - :: BotanCipher -- ^ __cipher__ - -> Ptr CSize -- ^ __ug__ - -> IO CInt - -{- -Return the ideal update granularity of the cipher. -This is some multiple of the update granularity, -reflecting possibilities for optimization. --} -foreign import capi safe "botan/ffi.h botan_cipher_get_ideal_update_granularity" - botan_cipher_get_ideal_update_granularity - :: BotanCipher -- ^ __cipher__ - -> Ptr CSize -- ^ __ug__ - -> IO CInt - --- | Get information about the key lengths. Prefer botan_cipher_get_keyspec -foreign import capi safe "botan/ffi.h botan_cipher_query_keylen" - botan_cipher_query_keylen - :: BotanCipher -- ^ __cipher__ - -> Ptr CSize -- ^ __out_minimum_keylength__ - -> Ptr CSize -- ^ __out_maximum_keylength__ - -> IO CInt - --- | Get information about the supported key lengths. -foreign import capi safe "botan/ffi.h botan_cipher_get_keyspec" - botan_cipher_get_keyspec - :: BotanCipher -- ^ __cipher__ - -> Ptr CSize -- ^ __min_keylen__ - -> Ptr CSize -- ^ __max_keylen__ - -> Ptr CSize -- ^ __mod_keylen__ - -> IO CInt - --- | Set the key for this cipher object -foreign import capi safe "botan/ffi.h botan_cipher_set_key" - botan_cipher_set_key - :: BotanCipher -- ^ __cipher__ - -> ConstPtr Word8 -- ^ __key__ - -> CSize -- ^ __key_len__ - -> IO 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. --} -foreign import capi safe "botan/ffi.h botan_cipher_reset" - botan_cipher_reset - :: BotanCipher -- ^ __cipher__ - -> IO CInt - --- | Set the associated data. Will fail if cipher is not an AEAD -foreign import capi safe "botan/ffi.h botan_cipher_set_associated_data" - botan_cipher_set_associated_data - :: BotanCipher -- ^ __cipher__ - -> ConstPtr Word8 -- ^ __ad__ - -> CSize -- ^ __ad_len__ - -> IO CInt - --- | Begin processing a new message using the provided nonce -foreign import capi safe "botan/ffi.h botan_cipher_start" - botan_cipher_start - :: BotanCipher -- ^ __cipher__ - -> ConstPtr Word8 -- ^ __nonce__ - -> CSize -- ^ __nonce_len__ - -> IO CInt - -pattern BOTAN_CIPHER_UPDATE_FLAG_NONE - , BOTAN_CIPHER_UPDATE_FLAG_FINAL - :: (Eq a, Num a) => a -pattern BOTAN_CIPHER_UPDATE_FLAG_NONE = 0 -pattern BOTAN_CIPHER_UPDATE_FLAG_FINAL = #const BOTAN_CIPHER_UPDATE_FLAG_FINAL - --- | Encrypt some data -foreign import capi safe "botan/ffi.h botan_cipher_update" - botan_cipher_update - :: BotanCipher -- ^ __cipher__ - -> Word32 -- ^ __flags__ - -> Ptr Word8 -- ^ __output[]__ - -> CSize -- ^ __output_size__ - -> Ptr CSize -- ^ __output_written__ - -> ConstPtr Word8 -- ^ __input_bytes[]__ - -> CSize -- ^ __input_size__ - -> Ptr CSize -- ^ __input_consumed__ - -> IO CInt - --- | Reset the key, nonce, AD and all other state on this cipher object -foreign import capi safe "botan/ffi.h botan_cipher_clear" - botan_cipher_clear - :: BotanCipher -- ^ __hash__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/Error.hs b/botan-bindings/src/Botan/Bindings/Error.hs new file mode 100644 index 00000000..c4907cc3 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/Error.hs @@ -0,0 +1,45 @@ +{-| +Module : Botan.Bindings.Error +Description : Error codes and exception handling +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX + +This module is based on the [Return +codes](https://botan.randombit.net/handbook/api_ref/ffi.html#return-codes) +section of the C Botan FFI documentation. +-} + +module Botan.Bindings.Error ( + Types.BOTAN_FFI_ERROR (..) + , pattern Types.BOTAN_FFI_SUCCESS + , pattern Types.BOTAN_FFI_INVALID_VERIFIER + , pattern Types.BOTAN_FFI_ERROR_INVALID_INPUT + , pattern Types.BOTAN_FFI_ERROR_BAD_MAC + , pattern Types.BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE + , pattern Types.BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR + , pattern Types.BOTAN_FFI_ERROR_EXCEPTION_THROWN + , pattern Types.BOTAN_FFI_ERROR_OUT_OF_MEMORY + , pattern Types.BOTAN_FFI_ERROR_SYSTEM_ERROR + , pattern Types.BOTAN_FFI_ERROR_INTERNAL_ERROR + , pattern Types.BOTAN_FFI_ERROR_BAD_FLAG + , pattern Types.BOTAN_FFI_ERROR_NULL_POINTER + , pattern Types.BOTAN_FFI_ERROR_BAD_PARAMETER + , pattern Types.BOTAN_FFI_ERROR_KEY_NOT_SET + , pattern Types.BOTAN_FFI_ERROR_INVALID_KEY_LENGTH + , pattern Types.BOTAN_FFI_ERROR_INVALID_OBJECT_STATE + , pattern Types.BOTAN_FFI_ERROR_NOT_IMPLEMENTED + , pattern Types.BOTAN_FFI_ERROR_INVALID_OBJECT + , pattern Types.BOTAN_FFI_ERROR_TLS_ERROR + , pattern Types.BOTAN_FFI_ERROR_HTTP_ERROR + , pattern Types.BOTAN_FFI_ERROR_ROUGHTIME_ERROR + , pattern Types.BOTAN_FFI_ERROR_UNKNOWN_ERROR + , Unsafe.botan_error_description + , Unsafe.botan_error_last_exception_message + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.Unsafe as Unsafe diff --git a/botan-bindings/src/Botan/Bindings/Error.hsc b/botan-bindings/src/Botan/Bindings/Error.hsc deleted file mode 100644 index 26873cdb..00000000 --- a/botan-bindings/src/Botan/Bindings/Error.hsc +++ /dev/null @@ -1,153 +0,0 @@ -{-| -Module : Botan.Bindings.Error -Description : Error codes and exception handling -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX - -This module is based on the [Return -codes](https://botan.randombit.net/handbook/api_ref/ffi.html#return-codes) -section of the C Botan FFI documentation. - -Error values below -10000 are reserved for the application (these can be returned from view functions). --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.Error ( - pattern BOTAN_FFI_SUCCESS - , pattern BOTAN_FFI_INVALID_VERIFIER - , pattern BOTAN_FFI_ERROR_INVALID_INPUT - , pattern BOTAN_FFI_ERROR_BAD_MAC - , pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE - , pattern BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR - , pattern BOTAN_FFI_ERROR_EXCEPTION_THROWN - , pattern BOTAN_FFI_ERROR_OUT_OF_MEMORY - , pattern BOTAN_FFI_ERROR_SYSTEM_ERROR - , pattern BOTAN_FFI_ERROR_INTERNAL_ERROR - , pattern BOTAN_FFI_ERROR_BAD_FLAG - , pattern BOTAN_FFI_ERROR_NULL_POINTER - , pattern BOTAN_FFI_ERROR_BAD_PARAMETER - , pattern BOTAN_FFI_ERROR_KEY_NOT_SET - , pattern BOTAN_FFI_ERROR_INVALID_KEY_LENGTH - , pattern BOTAN_FFI_ERROR_INVALID_OBJECT_STATE - , pattern BOTAN_FFI_ERROR_NOT_IMPLEMENTED - , pattern BOTAN_FFI_ERROR_INVALID_OBJECT - , pattern BOTAN_FFI_ERROR_TLS_ERROR - , pattern BOTAN_FFI_ERROR_HTTP_ERROR - , pattern BOTAN_FFI_ERROR_ROUGHTIME_ERROR - , pattern BOTAN_FFI_ERROR_UNKNOWN_ERROR - , botan_error_description - , botan_error_last_exception_message - ) where - -import Botan.Bindings.Prelude - -#include - --- TODO: consider making bindings in this module unsafe. See issue #61. - --- TODO: make the representation of BOTAN_FFI_ERROR a CInt. See issue #59. -pattern BOTAN_FFI_SUCCESS - , BOTAN_FFI_INVALID_VERIFIER - , BOTAN_FFI_ERROR_INVALID_INPUT - , BOTAN_FFI_ERROR_BAD_MAC - , BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE - , BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR - , BOTAN_FFI_ERROR_EXCEPTION_THROWN - , BOTAN_FFI_ERROR_OUT_OF_MEMORY - , BOTAN_FFI_ERROR_SYSTEM_ERROR - , BOTAN_FFI_ERROR_INTERNAL_ERROR - , BOTAN_FFI_ERROR_BAD_FLAG - , BOTAN_FFI_ERROR_NULL_POINTER - , BOTAN_FFI_ERROR_BAD_PARAMETER - , BOTAN_FFI_ERROR_KEY_NOT_SET - , BOTAN_FFI_ERROR_INVALID_KEY_LENGTH - , BOTAN_FFI_ERROR_INVALID_OBJECT_STATE - , BOTAN_FFI_ERROR_NOT_IMPLEMENTED - , BOTAN_FFI_ERROR_INVALID_OBJECT - , BOTAN_FFI_ERROR_TLS_ERROR - , BOTAN_FFI_ERROR_HTTP_ERROR - , BOTAN_FFI_ERROR_ROUGHTIME_ERROR - , BOTAN_FFI_ERROR_UNKNOWN_ERROR - :: (Eq a, Num a) => a - --- | Generally returned to indicate success -pattern BOTAN_FFI_SUCCESS = #const BOTAN_FFI_SUCCESS - --- | NOTE: this value is positive, but still represents an error condition. In indicates that the function completed successfully, but the value provided was not correct. For example botan_bcrypt_is_valid returns this value if the password did not match the hash. -pattern BOTAN_FFI_INVALID_VERIFIER = #const BOTAN_FFI_INVALID_VERIFIER - --- | The input was invalid. (Currently this error return is not used.) -pattern BOTAN_FFI_ERROR_INVALID_INPUT = #const BOTAN_FFI_ERROR_INVALID_INPUT - --- | While decrypting in an AEAD mode, the tag failed to verify. -pattern BOTAN_FFI_ERROR_BAD_MAC = #const BOTAN_FFI_ERROR_BAD_MAC - --- | Functions which write a variable amount of space return this if the indicated buffer length was insufficient to write the data. In that case, the output length parameter is set to the size that is required. -pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE = #const BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE - --- | A string view function which attempts to convert a string to a specified charset, and fails, can use this function to indicate the error. -pattern BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR = #const BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR - --- | An exception was thrown while processing this request, but no further details are available. -pattern BOTAN_FFI_ERROR_EXCEPTION_THROWN = #const BOTAN_FFI_ERROR_EXCEPTION_THROWN - --- | Memory allocation failed -pattern BOTAN_FFI_ERROR_OUT_OF_MEMORY = #const BOTAN_FFI_ERROR_OUT_OF_MEMORY - --- | A system call failed -pattern BOTAN_FFI_ERROR_SYSTEM_ERROR = #const BOTAN_FFI_ERROR_SYSTEM_ERROR - --- | An internal bug was encountered (please open a ticket on github) -pattern BOTAN_FFI_ERROR_INTERNAL_ERROR = #const BOTAN_FFI_ERROR_INTERNAL_ERROR - --- | A value provided in a flag variable was unknown. -pattern BOTAN_FFI_ERROR_BAD_FLAG = #const BOTAN_FFI_ERROR_BAD_FLAG - --- | A null pointer was provided as an argument where that is not allowed. -pattern BOTAN_FFI_ERROR_NULL_POINTER = #const BOTAN_FFI_ERROR_NULL_POINTER - --- | An argument did not match the function. -pattern BOTAN_FFI_ERROR_BAD_PARAMETER = #const BOTAN_FFI_ERROR_BAD_PARAMETER - --- | An object that requires a key normally must be keyed before use (eg before encrypting or MACing data). If this is not done, the operation will fail and return this error code. -pattern BOTAN_FFI_ERROR_KEY_NOT_SET = #const BOTAN_FFI_ERROR_KEY_NOT_SET - --- | An invalid key length was provided with a call to foo_set_key. -pattern BOTAN_FFI_ERROR_INVALID_KEY_LENGTH = #const BOTAN_FFI_ERROR_INVALID_KEY_LENGTH - --- | An operation was invoked that makes sense for the object, but it is in the wrong state to perform it. -pattern BOTAN_FFI_ERROR_INVALID_OBJECT_STATE = #const BOTAN_FFI_ERROR_INVALID_OBJECT_STATE - --- | This is returned if the functionality is not available for some reason. For example if you call botan_hash_init with a named hash function which is not enabled, this error is returned. -pattern BOTAN_FFI_ERROR_NOT_IMPLEMENTED = #const BOTAN_FFI_ERROR_NOT_IMPLEMENTED - --- | This is used if an object provided did not match the function. For example calling botan_hash_destroy on a botan_rng_t object will cause this error. -pattern BOTAN_FFI_ERROR_INVALID_OBJECT = #const BOTAN_FFI_ERROR_INVALID_OBJECT - --- | Note: this code is undocumented in @botan/ffi.h@. -pattern BOTAN_FFI_ERROR_TLS_ERROR = #const BOTAN_FFI_ERROR_TLS_ERROR - --- | Note: this code is undocumented in @botan/ffi.h@. -pattern BOTAN_FFI_ERROR_HTTP_ERROR = #const BOTAN_FFI_ERROR_HTTP_ERROR - --- | Note: this code is undocumented in @botan/ffi.h@. -pattern BOTAN_FFI_ERROR_ROUGHTIME_ERROR = #const BOTAN_FFI_ERROR_ROUGHTIME_ERROR - --- | Something bad happened, but we are not sure why or how. -pattern BOTAN_FFI_ERROR_UNKNOWN_ERROR = #const BOTAN_FFI_ERROR_UNKNOWN_ERROR - --- TODO: add a binding for BOTAN_FFI_TEMP_ERROR. See issue #44. - -foreign import capi safe "botan/ffi.h botan_error_description" - botan_error_description - :: CInt -- ^ __err__ - -> IO (ConstPtr CChar) - -foreign import capi safe "botan/ffi.h botan_error_last_exception_message" - botan_error_last_exception_message - :: IO (ConstPtr CChar) diff --git a/botan-bindings/src/Botan/Bindings/FPE.hs b/botan-bindings/src/Botan/Bindings/FPE.hs new file mode 100644 index 00000000..010ed2ca --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/FPE.hs @@ -0,0 +1,41 @@ +{-| +Module : Botan.Bindings.FPE +Description : Format Preserving Encryption +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.FPE ( + Types.Botan_fpe_t (..) + , Types.Botan_fpe_struct + , Safe.botan_fpe_destroy + , botan_fpe_destroy_ptr + , Types.bOTAN_FPE_FLAG_FE1_COMPAT_MODE + , botan_fpe_fe1_init + , botan_fpe_encrypt + , botan_fpe_decrypt + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word32, Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_fpe_destroy_ptr :: FunPtr (Types.Botan_fpe_t -> IO CInt) +botan_fpe_destroy_ptr = FunPtr.botan_fpe_destroy + +botan_fpe_fe1_init :: Ptr Types.Botan_fpe_t -> Types.Botan_mp_t -> ConstPtr Word8 -> CSize -> CSize -> Word32 -> IO CInt +botan_fpe_fe1_init = Safe.botan_fpe_fe1_init_wrapper + +botan_fpe_encrypt :: Types.Botan_fpe_t -> Types.Botan_mp_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_fpe_encrypt = Safe.botan_fpe_encrypt_wrapper + +botan_fpe_decrypt :: Types.Botan_fpe_t -> Types.Botan_mp_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_fpe_decrypt = Safe.botan_fpe_decrypt_wrapper diff --git a/botan-bindings/src/Botan/Bindings/FPE.hsc b/botan-bindings/src/Botan/Bindings/FPE.hsc deleted file mode 100644 index 097b8219..00000000 --- a/botan-bindings/src/Botan/Bindings/FPE.hsc +++ /dev/null @@ -1,99 +0,0 @@ -{-| -Module : Botan.Bindings.FPE -Description : Format Preserving Encryption -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX - -Format preserving encryption (FPE) refers to a set of techniques -for encrypting data such that the ciphertext has the same format -as the plaintext. For instance, you can use FPE to encrypt credit -card numbers with valid checksums such that the ciphertext is also -an credit card number with a valid checksum, or similarly for bank -account numbers, US Social Security numbers, or even more general -mappings like English words onto other English words. - -The scheme currently implemented in botan is called FE1, and described -in the paper Format Preserving Encryption by Mihir Bellare, Thomas -Ristenpart, Phillip Rogaway, and Till Stegers. FPE is an area of -ongoing standardization and it is likely that other schemes will be -included in the future. - -To encrypt an arbitrary value using FE1, you need to use a ranking -method. Basically, the idea is to assign an integer to every value -you might encrypt. For instance, a 16 digit credit card number consists -of a 15 digit code plus a 1 digit checksum. So to encrypt a credit card -number, you first remove the checksum, encrypt the 15 digit value modulo -1015, and then calculate what the checksum is for the new (ciphertext) -number. Or, if you were encrypting words in a dictionary, you could rank -the words by their lexicographical order, and choose the modulus to be -the number of words in the dictionary. --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.FPE ( - BotanFPEStruct - , BotanFPE (..) - , botan_fpe_destroy - , pattern BOTAN_FPE_FLAG_NONE - , pattern BOTAN_FPE_FLAG_FE1_COMPAT_MODE - , botan_fpe_fe1_init - , botan_fpe_encrypt - , botan_fpe_decrypt - ) where - -import Botan.Bindings.MPI -import Botan.Bindings.Prelude - -#include - --- | Opaque FPE struct -data {-# CTYPE "botan/ffi.h" "struct botan_fpe_struct" #-} BotanFPEStruct - --- | Botan FPE object -newtype {-# CTYPE "botan/ffi.h" "botan_fpe_t" #-} BotanFPE - = MkBotanFPE { runBotanFPE :: Ptr BotanFPEStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy the FPE object -foreign import capi safe "botan/ffi.h &botan_fpe_destroy" - botan_fpe_destroy - :: FinalizerPtr BotanFPEStruct - -pattern BOTAN_FPE_FLAG_NONE - , BOTAN_FPE_FLAG_FE1_COMPAT_MODE - :: (Eq a, Num a) => a - --- Not an actual flag -pattern BOTAN_FPE_FLAG_NONE = 0 -pattern BOTAN_FPE_FLAG_FE1_COMPAT_MODE = #const BOTAN_FPE_FLAG_FE1_COMPAT_MODE - -foreign import capi safe "botan/ffi.h botan_fpe_fe1_init" - botan_fpe_fe1_init - :: Ptr BotanFPE -- ^ __fpe__ - -> BotanMP -- ^ __n__ - -> ConstPtr Word8 -- ^ __key[]__ - -> CSize -- ^ __key_len__ - -> CSize -- ^ __rounds__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_fpe_encrypt" - botan_fpe_encrypt - :: BotanFPE -- ^ __fpe__ - -> BotanMP -- ^ __x__ - -> ConstPtr Word8 -- ^ __tweak[]__ - -> CSize -- ^ __tweak_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_fpe_decrypt" - botan_fpe_decrypt - :: BotanFPE -- ^ __fpe__ - -> BotanMP -- ^ __x__ - -> ConstPtr Word8 -- ^ __tweak[]__ - -> CSize -- ^ __tweak_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/HOTP.hs b/botan-bindings/src/Botan/Bindings/HOTP.hs index 14ddf4bc..f5140468 100644 --- a/botan-bindings/src/Botan/Bindings/HOTP.hs +++ b/botan-bindings/src/Botan/Bindings/HOTP.hs @@ -7,86 +7,29 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -One time password schemes are a user authentication method that -relies on a fixed secret key which is used to derive a sequence -of short passwords, each of which is accepted only once. Commonly -this is used to implement two-factor authentication (2FA), where -the user authenticates using both a conventional password (or a -public key signature) and an OTP generated by a small device such -as a mobile phone. - -Botan implements the HOTP and TOTP schemes from RFC 4226 and 6238. - -Since the range of possible OTPs is quite small, applications must -rate limit OTP authentication attempts to some small number per -second. Otherwise an attacker could quickly try all 1000000 6-digit -OTPs in a brief amount of time. - -HOTP generates OTPs that are a short numeric sequence, between 6 -and 8 digits (most applications use 6 digits), created using the -HMAC of a 64-bit counter value. If the counter ever repeats the -OTP will also repeat, thus both parties must assure the counter -only increments and is never repeated or decremented. Thus both -client and server must keep track of the next counter expected. - -Anyone with access to the client-specific secret key can authenticate -as that client, so it should be treated with the same security -consideration as would be given to any other symmetric key or -plaintext password. -} -{-# LANGUAGE CApiFFI #-} module Botan.Bindings.HOTP ( - BotanHOTPStruct - , BotanHOTP (..) - , botan_hotp_destroy + Types.Botan_hotp_t (..) + , Types.Botan_hotp_struct + , Safe.botan_hotp_destroy + , botan_hotp_destroy_ptr , botan_hotp_init - , botan_hotp_generate - , botan_hotp_check + , Safe.botan_hotp_generate + , Safe.botan_hotp_check ) where -import Botan.Bindings.Prelude - --- | Opaque HOTP struct -data {-# CTYPE "botan/ffi.h" "struct botan_hotp_struct" #-} BotanHOTPStruct - --- | Botan HOTP object -newtype {-# CTYPE "botan/ffi.h" "botan_hotp_t" #-} BotanHOTP - = MkBotanHOTP { runBotanHOTP :: Ptr BotanHOTPStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a HOTP instance -foreign import capi safe "botan/ffi.h &botan_hotp_destroy" - botan_hotp_destroy - :: FinalizerPtr BotanHOTPStruct - --- | Initialize a HOTP instance -foreign import capi safe "botan/ffi.h botan_hotp_init" - botan_hotp_init - :: Ptr BotanHOTP -- ^ __hotp__ - -> ConstPtr Word8 -- ^ __key[]__ - -> CSize -- ^ __key_len__ - -> ConstPtr CChar -- ^ __hash_algo__ - -> CSize -- ^ __digits__ - -> IO CInt - +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) --- | Generate a HOTP code for the provided counter -foreign import capi safe "botan/ffi.h botan_hotp_generate" - botan_hotp_generate - :: BotanHOTP -- ^ __hotp__ - -> Ptr Word32 -- ^ __hotp_code__ - -> Word64 -- ^ __hotp_counter__ - -> IO CInt +botan_hotp_destroy_ptr :: FunPtr (Types.Botan_hotp_t -> IO CInt) +botan_hotp_destroy_ptr = FunPtr.botan_hotp_destroy --- | Verify a HOTP code -foreign import capi safe "botan/ffi.h botan_hotp_check" - botan_hotp_check - :: BotanHOTP -- ^ __hotp__ - -> Ptr Word64 -- ^ __next_hotp_counter__ - -> Word32 -- ^ __hotp_code__ - -> Word64 -- ^ __hotp_counter__ - -> CSize -- ^ __resync_range__ - -> IO CInt +botan_hotp_init :: Ptr Types.Botan_hotp_t -> ConstPtr Word8 -> CSize -> ConstPtr CChar -> CSize -> IO CInt +botan_hotp_init = Safe.botan_hotp_init_wrapper diff --git a/botan-bindings/src/Botan/Bindings/Hash.hs b/botan-bindings/src/Botan/Bindings/Hash.hs index 97fedea3..bb70e753 100644 --- a/botan-bindings/src/Botan/Bindings/Hash.hs +++ b/botan-bindings/src/Botan/Bindings/Hash.hs @@ -7,31 +7,25 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -Hash functions are one-way functions, which map data of arbitrary size -to a fixed output length. Most of the hash functions in Botan are designed -to be cryptographically secure, which means that it is computationally -infeasible to create a collision (finding two inputs with the same hash) -or preimages (given a hash output, generating an arbitrary input with the -same hash). But note that not all such hash functions meet their goals, -in particular MD4 and MD5 are trivially broken. However they are still -included due to their wide adoption in various protocols. - -Using a hash function is typically split into three stages: initialization, -update, and finalization (often referred to as a IUF interface). The -initialization stage is implicit: after creating a hash function object, -it is ready to process data. Then update is called one or more times. -Calling update several times is equivalent to calling it once with all of -the arguments concatenated. After completing a hash computation (eg using -hashFinal), the internal state is reset to begin hashing a new message. -} -{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE OverloadedStrings #-} module Botan.Bindings.Hash ( - BotanHashStruct - , BotanHash (..) - , botan_hash_destroy + Types.Botan_hash_t (..) + , Types.Botan_hash_struct + , Safe.botan_hash_destroy + , botan_hash_destroy_ptr + , Safe.botan_hash_init + , Safe.botan_hash_name + , Safe.botan_hash_copy_state + , Safe.botan_hash_output_length + , Safe.botan_hash_block_size + , Safe.botan_hash_update + , Safe.botan_hash_final + , Safe.botan_hash_clear + , Safe.botan_pkcs_hash_id + , pattern BOTAN_HASH_BLAKE2B , pattern BOTAN_HASH_KECCAK_1600 , pattern BOTAN_HASH_GOST_34_11 @@ -59,31 +53,17 @@ module Botan.Bindings.Hash ( , pattern BOTAN_CHECKSUM_ADLER32 , pattern BOTAN_CHECKSUM_CRC24 , pattern BOTAN_CHECKSUM_CRC32 - , botan_hash_init - , botan_hash_name - , botan_hash_copy_state - , botan_hash_output_length - , botan_hash_block_size - , botan_hash_update - , botan_hash_final - , botan_hash_clear - , botan_pkcs_hash_id ) where -import Botan.Bindings.Prelude - --- | Opaque Hash struct -data {-# CTYPE "botan/ffi.h" "struct botan_hash_struct" #-} BotanHashStruct +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Foreign.C.Types (CInt) +import Foreign.Ptr (FunPtr) --- | Botan Hash object -newtype {-# CTYPE "botan/ffi.h" "botan_hash_t" #-} BotanHash - = MkBotanHash { runBotanHash :: Ptr BotanHashStruct } - deriving newtype (Eq, Ord, Storable) - --- | Frees all resources of the hash object -foreign import capi safe "botan/ffi.h &botan_hash_destroy" - botan_hash_destroy - :: FinalizerPtr BotanHashStruct +botan_hash_destroy_ptr :: FunPtr (Types.Botan_hash_t -> IO CInt) +botan_hash_destroy_ptr = FunPtr.botan_hash_destroy pattern BOTAN_HASH_BLAKE2B , BOTAN_HASH_KECCAK_1600 @@ -138,76 +118,3 @@ pattern BOTAN_HASH_STRAT_COMB4P = "Comb4P" pattern BOTAN_CHECKSUM_ADLER32 = "Adler32" pattern BOTAN_CHECKSUM_CRC24 = "CRC24" pattern BOTAN_CHECKSUM_CRC32 = "CRC32" - --- | Initialize a hash function object -foreign import capi safe "botan/ffi.h botan_hash_init" - botan_hash_init - :: Ptr BotanHash -- ^ __hash__: hash object - -> ConstPtr CChar -- ^ __hash_name__: name of the hash function, e.g., "SHA-384" - -> Word32 -- ^ __flags__: should be 0 in current API revision, all other uses are reserved - -- and return BOTAN_FFI_ERROR_BAD_FLAG - -> IO CInt - --- | Get the name of this hash function -foreign import capi safe "botan/ffi.h botan_hash_name" - botan_hash_name - :: BotanHash -- ^ __hash__: the object to read - -> Ptr CChar -- ^ __name__: output buffer - -> Ptr CSize -- ^ __name_len__: on input, the length of buffer, on success the number of bytes written - -> IO CInt - --- | Copy the state of a hash function object -foreign import capi safe "botan/ffi.h botan_hash_copy_state" - botan_hash_copy_state - :: Ptr BotanHash -- ^ __dest__: destination hash object - -> BotanHash -- ^ __source__: source hash object - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Writes the output length of the hash function to *output_length -foreign import capi safe "botan/ffi.h botan_hash_output_length" - botan_hash_output_length - :: BotanHash -- ^ __hash__: hash object - -> Ptr CSize -- ^ __output_length__: output buffer to hold the hash function output length - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Writes the block size of the hash function to *block_size -foreign import capi safe "botan/ffi.h botan_hash_block_size" - botan_hash_block_size - :: BotanHash -- ^ __hash__: hash object - -> Ptr CSize -- ^ __block_size__: output buffer to hold the hash function block size - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Send more input to the hash function -foreign import capi safe "botan/ffi.h botan_hash_update" - botan_hash_update - :: BotanHash -- ^ __hash__: hash object - -> ConstPtr Word8 -- ^ __in__: input buffer - -> CSize -- ^ __in_len__: number of bytes to read from the input buffer - -> IO CInt -- ^ 0 on success, a negative value on failure - -{- | -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. --} -foreign import capi safe "botan/ffi.h botan_hash_final" - botan_hash_final - :: BotanHash -- ^ __hash__: hash object - -> Ptr Word8 -- ^ __out[]__: output buffer - -> IO CInt -- ^ 0 on success, a negative value on failure - -{- | -Reinitializes the state of the hash computation. A hash can -be computed (with update/final) immediately. --} -foreign import capi safe "botan/ffi.h botan_hash_clear" - botan_hash_clear - :: BotanHash -- ^ __hash__: hash object - -> IO CInt -- 0 on success, a negative value on failure - -foreign import capi safe "botan/ffi.h botan_pkcs_hash_id" - botan_pkcs_hash_id - :: ConstPtr CChar -- ^ __hash_name__ - -> Ptr Word8 -- ^ __pkcs_id[]__ - -> Ptr CSize -- ^ __pkcs_id_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/KDF.hs b/botan-bindings/src/Botan/Bindings/KDF.hs index f7719c28..49d4c54b 100644 --- a/botan-bindings/src/Botan/Bindings/KDF.hs +++ b/botan-bindings/src/Botan/Bindings/KDF.hs @@ -7,30 +7,13 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -Key derivation functions are used to turn some amount of shared -secret material into uniform random keys suitable for use with -symmetric algorithms. An example of an input which is useful for -a KDF is a shared secret created using Diffie-Hellman key agreement. - -Typically a KDF is also used with a salt and a label. The salt should -be some random information which is available to all of the parties -that would need to use the KDF; this could be performed by setting -the salt to some kind of session identifier, or by having one of the -parties generate a random salt and including it in a message. - -The label is used to bind the KDF output to some specific context. For -instance if you were using the KDF to derive a specific key referred to -as the โ€œmessage keyโ€ in the protocol description, you might use a label -of โ€œFooProtocol v2 MessageKeyโ€. This labeling ensures that if you -accidentally use the same input key and salt in some other context, you -still use different keys in the two contexts. -} -{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE OverloadedStrings #-} module Botan.Bindings.KDF ( - pattern BOTAN_KDF_HKDF + botan_kdf + , pattern BOTAN_KDF_HKDF , pattern BOTAN_KDF_HKDF_EXTRACT , pattern BOTAN_KDF_HKDF_EXPAND , pattern BOTAN_KDF_KDF2 @@ -43,10 +26,17 @@ module Botan.Bindings.KDF ( , pattern BOTAN_KDF_SP800_108_PIPELINE , pattern BOTAN_KDF_SP800_56A , pattern BOTAN_KDF_SP800_56C - , botan_kdf ) where -import Botan.Bindings.Prelude +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Data.Word (Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_kdf :: ConstPtr CChar -> Ptr Word8 -> CSize -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> IO CInt +botan_kdf = Safe.botan_kdf_wrapper pattern BOTAN_KDF_HKDF , BOTAN_KDF_HKDF_EXTRACT @@ -80,17 +70,3 @@ pattern BOTAN_KDF_SP800_108_FEEDBACK = "SP800-108-Feedback" pattern BOTAN_KDF_SP800_108_PIPELINE = "SP800-108-Pipeline" pattern BOTAN_KDF_SP800_56A = "SP800-56A" pattern BOTAN_KDF_SP800_56C = "SP800-56C" - --- | Derive a key -foreign import capi safe "botan/ffi.h botan_kdf" - botan_kdf - :: ConstPtr CChar -- ^ __kdf_algo__: KDF algorithm, e.g., "SP800-56C" - -> Ptr Word8 -- ^ __out[]__: buffer holding the derived key, must be of length out_len - -> CSize -- ^ __out_len__: the desired output length in bytes - -> ConstPtr Word8 -- ^ __secret[]__: the secret input - -> CSize -- ^ __secret_len__: size of secret in bytes - -> ConstPtr Word8 -- ^ __salt[]__: a diversifier - -> CSize -- ^ __salt_len__: size of salt in bytes - -> ConstPtr Word8 -- ^ __label[]__: purpose for the derived keying material - -> CSize -- ^ __label_len__: size of label in bytes - -> IO CInt -- ^ 0 on success, a negative value on failure diff --git a/botan-bindings/src/Botan/Bindings/KeyWrap.hs b/botan-bindings/src/Botan/Bindings/KeyWrap.hs index d98fb249..547508fa 100644 --- a/botan-bindings/src/Botan/Bindings/KeyWrap.hs +++ b/botan-bindings/src/Botan/Bindings/KeyWrap.hs @@ -7,50 +7,21 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -NIST specifies two mechanisms for wrapping (encrypting) symmetric keys -using another key. The first (and older, more widely supported) method -requires the input be a multiple of 8 bytes long. The other allows any -length input, though only up to 2**32 bytes. - -These algorithms are described in NIST SP 800-38F, and RFCs 3394 and 5649. - -These functions take an arbitrary 128-bit block cipher. NIST only allows -these functions with AES, but any 128-bit cipher will do and some other -implementations (such as in OpenSSL) do also allow other ciphers. - -Use AES for best interop. -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.KeyWrap ( botan_nist_kw_enc , botan_nist_kw_dec ) where -import Botan.Bindings.Prelude +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) -foreign import capi safe "botan/ffi.h botan_nist_kw_enc" - botan_nist_kw_enc - :: ConstPtr CChar -- ^ __cipher_algo__ - -> CInt -- ^ __padded__ - -> ConstPtr Word8 -- ^ __key[]__ - -> CSize -- ^ __key_len__ - -> ConstPtr Word8 -- ^ __kek[]__ - -> CSize -- ^ __kek_len__ - -> Ptr Word8 -- ^ __wrapped_key[]__ - -> Ptr CSize -- ^ __wrapped_key_len__ - -> IO CInt +botan_nist_kw_enc :: ConstPtr CChar -> CInt -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_nist_kw_enc = Safe.botan_nist_kw_enc_wrapper -foreign import capi safe "botan/ffi.h botan_nist_kw_dec" - botan_nist_kw_dec - :: ConstPtr CChar -- ^ __cipher_algo__ - -> CInt -- ^ __padded__ - -> ConstPtr Word8 -- ^ __wrapped_key[]__ - -> CSize -- ^ __wrapped_key_len__ - -> ConstPtr Word8 -- ^ __kek[]__ - -> CSize -- ^ __kek_len__ - -> Ptr Word8 -- ^ __key[]__ - -> Ptr CSize -- ^ __key_len__ - -> IO CInt +botan_nist_kw_dec :: ConstPtr CChar -> CInt -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_nist_kw_dec = Safe.botan_nist_kw_dec_wrapper diff --git a/botan-bindings/src/Botan/Bindings/MAC.hs b/botan-bindings/src/Botan/Bindings/MAC.hs index c0c0c146..4f9de422 100644 --- a/botan-bindings/src/Botan/Bindings/MAC.hs +++ b/botan-bindings/src/Botan/Bindings/MAC.hs @@ -7,40 +7,24 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -A Message Authentication Code algorithm computes a tag over a -message utilizing a shared secret key. Thus a valid tag confirms -the authenticity and integrity of the message. Only entities in -possession of the shared secret key are able to verify the tag. - -Note - -When combining a MAC with unauthenticated encryption mode, prefer -to first encrypt the message and then MAC the ciphertext. The -alternative is to MAC the plaintext, which depending on exact usage -can suffer serious security issues. For a detailed discussion of -this issue see the paper โ€œThe Order of Encryption and Authentication -for Protecting Communicationsโ€ by Hugo Krawczyk - -The Botan MAC computation is split into five stages. - -- Instantiate the MAC algorithm. - -- Set the secret key. - -- Process IV. - -- Process data. - -- Finalize the MAC computation. -} -{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE OverloadedStrings #-} module Botan.Bindings.MAC ( - BotanMACStruct - , BotanMAC (..) - , botan_mac_destroy + Types.Botan_mac_t (..) + , Types.Botan_mac_struct + , Safe.botan_mac_destroy + , botan_mac_destroy_ptr + , Safe.botan_mac_init + , Safe.botan_mac_output_length + , Safe.botan_mac_set_key + , Safe.botan_mac_set_nonce + , Safe.botan_mac_update + , Safe.botan_mac_final + , Safe.botan_mac_clear + , Safe.botan_mac_name + , Safe.botan_mac_get_keyspec , pattern BOTAN_MAC_CMAC , pattern BOTAN_MAC_GMAC @@ -48,32 +32,17 @@ module Botan.Bindings.MAC ( , pattern BOTAN_MAC_Poly1305 , pattern BOTAN_MAC_SipHash , pattern BOTAN_MAC_X9_19_MAC - - , botan_mac_init - , botan_mac_output_length - , botan_mac_set_key - , botan_mac_set_nonce - , botan_mac_update - , botan_mac_final - , botan_mac_clear - , botan_mac_name - , botan_mac_get_keyspec ) where -import Botan.Bindings.Prelude - --- | Opaque MAC struct -data {-# CTYPE "botan/ffi.h" "struct botan_mac_struct" #-} BotanMACStruct - --- | Botan MAC object -newtype {-# CTYPE "botan/ffi.h" "botan_mac_t" #-} BotanMAC - = MkBotanMAC { runBotanMAC :: Ptr BotanMACStruct } - deriving newtype (Eq, Ord, Storable) +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Foreign.C.Types (CInt) +import Foreign.Ptr (FunPtr) --- | Frees all resources of the MAC object -foreign import capi safe "botan/ffi.h &botan_mac_destroy" - botan_mac_destroy - :: FinalizerPtr BotanMACStruct +botan_mac_destroy_ptr :: FunPtr (Types.Botan_mac_t -> IO CInt) +botan_mac_destroy_ptr = FunPtr.botan_mac_destroy pattern BOTAN_MAC_CMAC , BOTAN_MAC_GMAC @@ -95,81 +64,3 @@ pattern BOTAN_MAC_HMAC = "HMAC" pattern BOTAN_MAC_Poly1305 = "Poly1305" pattern BOTAN_MAC_SipHash = "SipHash" pattern BOTAN_MAC_X9_19_MAC = "X9.19-MAC" - --- | Initialize a message authentication code object -foreign import capi safe "botan/ffi.h botan_mac_init" - botan_mac_init - :: Ptr BotanMAC -- ^ __mac__: mac object - -> ConstPtr CChar -- ^ __mac_name__: name of the hash function, e.g., "HMAC(SHA-384)" - -> Word32 -- ^ __flags__: should be 0 in current API revision, all other uses are reserved - -- and return a negative value (error code) - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Writes the output length of the message authentication code to *output_length -foreign import capi safe "botan/ffi.h botan_mac_output_length" - botan_mac_output_length - :: BotanMAC -- ^ __mac__: mac object - -> Ptr CSize -- ^ __output_length__: output buffer to hold the MAC output length - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Sets the key on the MAC -foreign import capi safe "botan/ffi.h botan_mac_set_key" - botan_mac_set_key - :: BotanMAC -- ^ __mac__: mac object - -> ConstPtr Word8 -- ^ __key__: buffer holding the key - -> CSize -- ^ __key_len__: size of the key buffer in bytes - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Sets the nonce on the MAC -foreign import capi safe "botan/ffi.h botan_mac_set_nonce" - botan_mac_set_nonce - :: BotanMAC -- ^ __mac__: mac object - -> ConstPtr Word8 -- ^ __nonce__: buffer holding the nonce - -> CSize -- ^ __nonce_len__: size of the nonce buffer in bytes - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Send more input to the message authentication code -foreign import capi safe "botan/ffi.h botan_mac_update" - botan_mac_update - :: BotanMAC -- ^ __mac__: mac object - -> ConstPtr Word8 -- ^ __buf__: input buffer - -> CSize -- ^ __len__: number of bytes to read from the input buffer - -> IO CInt -- ^ 0 on success, a negative value on failure - -{- | -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. --} -foreign import capi safe "botan/ffi.h botan_mac_final" - botan_mac_final - :: BotanMAC -- ^ __mac__: mac object - -> Ptr Word8 -- ^ __out[]__: output buffer - -> IO CInt -- ^ 0 on success, a negative value on failure - -{- | -Reinitializes the state of the MAC computation. A MAC can -be computed (with update/final) immediately. --} -foreign import capi safe "botan/ffi.h botan_mac_clear" - botan_mac_clear - :: BotanMAC -- ^ __mac__: mac object - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Get the name of this MAC -foreign import capi safe "botan/ffi.h botan_mac_name" - botan_mac_name - :: BotanMAC -- ^ __mac__: the object to read - -> Ptr CChar -- ^ __name__: output buffer - -> Ptr CSize -- ^ __name_len__: on input, the length of buffer, on success the number of bytes written - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Get the key length limits of this auth code -foreign import capi safe "botan/ffi.h botan_mac_get_keyspec" - botan_mac_get_keyspec - :: BotanMAC -- ^ __mac__: the object to read - -> Ptr CSize -- ^ __out_minimum_keylength__: if non-NULL, will be set to minimum keylength of MAC - -> Ptr CSize -- ^ __out_maximum_keylength__: if non-NULL, will be set to maximum keylength of MAC - -> Ptr CSize -- ^ __out_keylength_modulo__: if non-NULL will be set to byte multiple of valid keys - -> IO CInt -- ^ 0 on success, a negative value on failure - diff --git a/botan-bindings/src/Botan/Bindings/MPI.hs b/botan-bindings/src/Botan/Bindings/MPI.hs index 33dfc307..fd330753 100644 --- a/botan-bindings/src/Botan/Bindings/MPI.hs +++ b/botan-bindings/src/Botan/Bindings/MPI.hs @@ -9,362 +9,61 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.MPI ( - BotanMPStruct - , BotanMP (..) - , botan_mp_destroy - , botan_mp_init - , botan_mp_to_hex - , botan_mp_to_str - , botan_mp_clear - , botan_mp_set_from_int - , botan_mp_set_from_mp - , botan_mp_set_from_str - , botan_mp_set_from_radix_str - , botan_mp_num_bits - , botan_mp_num_bytes - , botan_mp_to_bin + Types.Botan_mp_t (..) + , Types.Botan_mp_struct + , Safe.botan_mp_destroy + , botan_mp_destroy_ptr + , Safe.botan_mp_init + , Safe.botan_mp_to_hex + , Safe.botan_mp_to_str + , Safe.botan_mp_clear + , Safe.botan_mp_set_from_int + , Safe.botan_mp_set_from_mp + , Safe.botan_mp_set_from_str + , Safe.botan_mp_set_from_radix_str + , Safe.botan_mp_num_bits + , Safe.botan_mp_num_bytes + , Safe.botan_mp_to_bin , botan_mp_from_bin - , botan_mp_to_uint32 - , botan_mp_is_positive - , botan_mp_is_negative - , botan_mp_flip_sign - , botan_mp_is_zero - , botan_mp_add_u32 - , botan_mp_sub_u32 - , botan_mp_add - , botan_mp_sub - , botan_mp_mul - , botan_mp_div - , botan_mp_mod_mul - , botan_mp_equal - , botan_mp_cmp - , botan_mp_swap - , botan_mp_powmod - , botan_mp_lshift - , botan_mp_rshift - , botan_mp_mod_inverse - , botan_mp_rand_bits - , botan_mp_rand_range - , botan_mp_gcd - , botan_mp_is_prime - , botan_mp_get_bit - , botan_mp_set_bit - , botan_mp_clear_bit + , Safe.botan_mp_to_uint32 + , Safe.botan_mp_is_positive + , Safe.botan_mp_is_negative + , Safe.botan_mp_flip_sign + , Safe.botan_mp_is_zero + , Safe.botan_mp_add_u32 + , Safe.botan_mp_sub_u32 + , Safe.botan_mp_add + , Safe.botan_mp_sub + , Safe.botan_mp_mul + , Safe.botan_mp_div + , Safe.botan_mp_mod_mul + , Safe.botan_mp_equal + , Safe.botan_mp_cmp + , Safe.botan_mp_swap + , Safe.botan_mp_powmod + , Safe.botan_mp_lshift + , Safe.botan_mp_rshift + , Safe.botan_mp_mod_inverse + , Safe.botan_mp_rand_bits + , Safe.botan_mp_rand_range + , Safe.botan_mp_gcd + , Safe.botan_mp_is_prime + , Safe.botan_mp_get_bit + , Safe.botan_mp_set_bit + , Safe.botan_mp_clear_bit ) where -import Botan.Bindings.Prelude -import Botan.Bindings.RNG - --- | Opaque MP struct -data {-# CTYPE "botan/ffi.h" "struct botan_mp_struct" #-} BotanMPStruct - --- | Botan MP object -newtype {-# CTYPE "botan/ffi.h" "botan_mp_t" #-} BotanMP - = MkBotanMP { runBotanMP :: Ptr BotanMPStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy (deallocate) an MPI -foreign import capi safe "botan/ffi.h &botan_mp_destroy" - botan_mp_destroy - :: FinalizerPtr BotanMPStruct - --- | Initialize an MPI -foreign import capi safe "botan/ffi.h botan_mp_init" - botan_mp_init - :: Ptr BotanMP -- ^ __mp__ - -> IO CInt - --- | Convert the MPI to a hex string. Writes botan_mp_num_bytes(mp)*2 + 1 bytes -foreign import capi safe "botan/ffi.h botan_mp_to_hex" - botan_mp_to_hex - :: BotanMP -- ^ __mp__ - -> Ptr CChar -- ^ __out__ - -> IO CInt - -{- | -Convert the MPI to a string. Currently base == 10 and base == 16 are supported. - -NOTE: base 16 encoding has an `0x` prefix, base 10 does not. - -NOTE: Despite the size ptr, this appears to be returning null-terminated CStrings --} -foreign import capi safe "botan/ffi.h botan_mp_to_str" - botan_mp_to_str - :: BotanMP -- ^ __mp__ - -> Word8 -- ^ __base__ - -> Ptr CChar -- ^ __out__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - --- | Set the MPI to zero -foreign import capi safe "botan/ffi.h botan_mp_clear" - botan_mp_clear - :: BotanMP -- ^ __mp__ - -> IO CInt - --- | Set the MPI value from an int -foreign import capi safe "botan/ffi.h botan_mp_set_from_int" - botan_mp_set_from_int - :: BotanMP -- ^ __mp__ - -> CInt -- ^ __initial_value__ - -> IO CInt - --- | Set the MPI value from another MP object -foreign import capi safe "botan/ffi.h botan_mp_set_from_mp" - botan_mp_set_from_mp - :: BotanMP -- ^ __dest__ - -> BotanMP -- ^ __source__ - -> IO CInt - --- | Set the MPI value from a string -foreign import capi safe "botan/ffi.h botan_mp_set_from_str" - botan_mp_set_from_str - :: BotanMP -- ^ __dest__ - -> ConstPtr CChar -- ^ __str__ - -> IO CInt - -{- | -Set the MPI value from a string with arbitrary radix. -For arbitrary being 10 or 16. --} -foreign import capi safe "botan/ffi.h botan_mp_set_from_radix_str" - botan_mp_set_from_radix_str - :: BotanMP -- ^ __dest__ - -> ConstPtr CChar -- ^ __str__ - -> CSize -- ^ __radix__ - -> IO CInt - --- | Return the number of significant bits in the MPI -foreign import capi safe "botan/ffi.h botan_mp_num_bits" - botan_mp_num_bits - :: BotanMP -- ^ __n__ - -> Ptr CSize -- ^ __bits__ - -> IO CInt - --- | Return the number of significant bytes in the MPI -foreign import capi safe "botan/ffi.h botan_mp_num_bytes" - botan_mp_num_bytes - :: BotanMP -- ^ __n__ - -> Ptr CSize -- ^ __bytes__ - -> IO CInt - --- | Convert the MPI to a big-endian binary string. Writes botan_mp_num_bytes to vec -foreign import capi safe "botan/ffi.h botan_mp_to_bin" - botan_mp_to_bin - :: BotanMP -- ^ __mp__ - -> Ptr Word8 -- ^ __vec[]__ - -> IO CInt - --- | Set an MP to the big-endian binary value -foreign import capi safe "botan/ffi.h botan_mp_from_bin" - botan_mp_from_bin - :: BotanMP -- ^ __mp__ - -> ConstPtr Word8 -- ^ __vec[]__ - -> CSize -- ^ __vec_len__ - -> IO CInt - --- | Convert the MPI to a uint32_t, if possible. Fails if MPI is negative or too large. -foreign import capi safe "botan/ffi.h botan_mp_to_uint32" - botan_mp_to_uint32 - :: BotanMP -- ^ __mp__ - -> Ptr Word32 -- ^ __val__ - -> IO 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. --} -foreign import capi safe "botan/ffi.h botan_mp_is_positive" - botan_mp_is_positive - :: BotanMP -- ^ __mp__ - -> IO CInt - --- | Return 1 iff mp is less than 0 -foreign import capi safe "botan/ffi.h botan_mp_is_negative" - botan_mp_is_negative - :: BotanMP -- ^ __mp__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_flip_sign" - botan_mp_flip_sign - :: BotanMP -- ^ __mp__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_is_zero" - botan_mp_is_zero - :: BotanMP -- ^ __mp__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_add_u32" - botan_mp_add_u32 - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __x__ - -> Word32 -- ^ __y__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_sub_u32" - botan_mp_sub_u32 - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __x__ - -> Word32 -- ^ __y__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_add" - botan_mp_add - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_sub" - botan_mp_sub - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_mul" - botan_mp_mul - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_div" - botan_mp_div - :: BotanMP -- ^ __quotient__ - -> BotanMP -- ^ __remainder__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_mod_mul" - botan_mp_mod_mul - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> BotanMP -- ^ __mod__ - -> IO CInt - -{- | -Returns 0 if x != y -Returns 1 if x == y -Returns negative number on error --} -foreign import capi safe "botan/ffi.h botan_mp_equal" - botan_mp_equal - :: BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - -{- | -Sets *result to comparison result: --1 if x < y, 0 if x == y, 1 if x > y -Returns negative number on error or zero on success --} -foreign import capi safe "botan/ffi.h botan_mp_cmp" - botan_mp_cmp - :: Ptr CInt -- ^ __result__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - --- | Swap two botan_mp_t -foreign import capi safe "botan/ffi.h botan_mp_swap" - botan_mp_swap - :: BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - --- | Return (base^exponent) % modulus -foreign import capi safe "botan/ffi.h botan_mp_powmod" - botan_mp_powmod - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __base__ - -> BotanMP -- ^ __exponent__ - -> BotanMP -- ^ __modulus__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_lshift" - botan_mp_lshift - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __n__ - -> CSize -- ^ __shift__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_rshift" - botan_mp_rshift - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __n__ - -> CSize -- ^ __shift__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_mod_inverse" - botan_mp_mod_inverse - :: BotanMP -- ^ __result__ - -> BotanMP -- ^ __n__ - -> BotanMP -- ^ __modulus__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_rand_bits" - botan_mp_rand_bits - :: BotanMP -- ^ __rand_out__ - -> BotanRNG -- ^ __rng__ - -> CSize -- ^ __bits__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_rand_range" - botan_mp_rand_range - :: BotanMP -- ^ __rand_out__ - -> BotanRNG -- ^ __rng__ - -> BotanMP -- ^ __lower_bound__ - -> BotanMP -- ^ __upper_bound__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_mp_gcd" - botan_mp_gcd - :: BotanMP -- ^ __out__ - -> BotanMP -- ^ __x__ - -> BotanMP -- ^ __y__ - -> IO CInt - -{- | -Returns 0 if n is not prime -Returns 1 if n is prime -Returns negative number on error --} -foreign import capi safe "botan/ffi.h botan_mp_is_prime" - botan_mp_is_prime - :: BotanMP -- ^ __n__ - -> BotanRNG -- ^ __rng__ - -> CSize -- ^ __test_prob__ - -> IO 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 --} -foreign import capi safe "botan/ffi.h botan_mp_get_bit" - botan_mp_get_bit - :: BotanMP -- ^ __n__ - -> CSize -- ^ __bit__ - -> IO CInt +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) --- | Set the specified bit -foreign import capi safe "botan/ffi.h botan_mp_set_bit" - botan_mp_set_bit - :: BotanMP -- ^ __n__ - -> CSize -- ^ __bit__ - -> IO CInt +botan_mp_destroy_ptr :: FunPtr (Types.Botan_mp_t -> IO CInt) +botan_mp_destroy_ptr = FunPtr.botan_mp_destroy --- | Clear the specified bit -foreign import capi safe "botan/ffi.h botan_mp_clear_bit" - botan_mp_clear_bit - :: BotanMP -- ^ __n__ - -> CSize -- ^ __bit__ - -> IO CInt +botan_mp_from_bin :: Types.Botan_mp_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_mp_from_bin = Safe.botan_mp_from_bin_wrapper diff --git a/botan-bindings/src/Botan/Bindings/Prelude.hs b/botan-bindings/src/Botan/Bindings/Prelude.hs deleted file mode 100644 index 0bd0b759..00000000 --- a/botan-bindings/src/Botan/Bindings/Prelude.hs +++ /dev/null @@ -1,63 +0,0 @@ -{-# LANGUAGE CApiFFI #-} -{-# LANGUAGE CPP #-} - -module Botan.Bindings.Prelude ( - module Prelude - , module Data.String - , module Data.Word - , module System.IO - , module Foreign.C.String - , module Foreign.C.Types - , module Foreign.ForeignPtr - , module Foreign.Marshal.Alloc - , module Foreign.Marshal.Array - , module Foreign.Ptr - , module Foreign.Storable - , ConstPtr(..) - ) where - -import Prelude - -import Data.String (IsString (..)) -import Data.Word - -import System.IO - -import Foreign.C.String -import Foreign.C.Types -import Foreign.ForeignPtr -import Foreign.Marshal.Alloc -import Foreign.Marshal.Array -import Foreign.Ptr -import Foreign.Storable - - -#if MIN_VERSION_base (4,18,0) -import Foreign.C.ConstPtr -#else -import Data.Data -import Data.Kind -#endif - -#if !(MIN_VERSION_base (4,18,0)) - --- NOTE: Taken from Foreign.C.ConstPtr, more or less --- NOTE: Raises a warning on older base / compilers if the shim --- is a `newtype` instead of a `type`, because the special --- logic for const pointers didn't exist yet --- SEE: https://gitlab.haskell.org/ghc/ghc/-/issues/22043 --- AFFECTS: --- botan_error_description --- botan_error_last_exception_message --- botan_x509_cert_validation_status --- botan_version_string -type ConstPtr :: Type -> Type -type role ConstPtr phantom -newtype ConstPtr a = ConstPtr { unConstPtr :: Ptr a } - deriving stock (Data) - deriving newtype (Eq, Ord, Storable) - -instance Show (ConstPtr a) where - showsPrec d (ConstPtr p) = showParen (d > 10) $ showString "ConstPtr " . showsPrec 11 p - -#endif diff --git a/botan-bindings/src/Botan/Bindings/PubKey.hs b/botan-bindings/src/Botan/Bindings/PubKey.hs new file mode 100644 index 00000000..6878c959 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/PubKey.hs @@ -0,0 +1,342 @@ +{-| +Module : Botan.Bindings.PubKey +Description : Public key cryptography +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +{-# LANGUAGE OverloadedStrings #-} + +module Botan.Bindings.PubKey ( + Types.Botan_privkey_t (..) + , Types.Botan_privkey_struct + , Safe.botan_pk_op_decrypt_destroy + , botan_privkey_destroy_ptr + , Safe.botan_privkey_create + , Types.bOTAN_CHECK_KEY_EXPENSIVE_TESTS + , Safe.botan_privkey_check_key + , botan_privkey_load + , Types.bOTAN_PRIVKEY_EXPORT_FLAG_DER + , Types.bOTAN_PRIVKEY_EXPORT_FLAG_PEM + , Safe.botan_privkey_export + , Safe.botan_privkey_view_der + , Safe.botan_privkey_view_pem + , Safe.botan_privkey_algo_name + , Safe.botan_privkey_export_encrypted_pbkdf_msec + , Safe.botan_privkey_export_encrypted_pbkdf_iter + , Safe.botan_privkey_view_encrypted_der + , Safe.botan_privkey_view_encrypted_der_timed + , Safe.botan_privkey_view_encrypted_pem + , Safe.botan_privkey_view_encrypted_pem_timed + , Safe.botan_privkey_get_field + , Types.Botan_pubkey_t (..) + , Types.Botan_pubkey_struct + , Safe.botan_pubkey_destroy + , botan_pubkey_destroy_ptr + , Safe.botan_privkey_export_pubkey + , botan_pubkey_load + , Safe.botan_pubkey_export + , Safe.botan_pubkey_view_der + , Safe.botan_pubkey_view_pem + , Safe.botan_pubkey_algo_name + , Safe.botan_pubkey_check_key + , Safe.botan_pubkey_estimated_strength + , Safe.botan_pubkey_fingerprint + , Safe.botan_pubkey_get_field + , Safe.botan_pubkey_view_ec_public_point + + , pattern BOTAN_PK_RSA + , pattern BOTAN_PK_SM2 + , pattern BOTAN_PK_ELGAMAL + , pattern BOTAN_PK_DSA + , pattern BOTAN_PK_ECDSA + , pattern BOTAN_PK_ECKCDSA + , pattern BOTAN_PK_ECGDSA + , pattern BOTAN_PK_GOST_34_10 + , pattern BOTAN_PK_ED25519 + , pattern BOTAN_PK_XMSS + , pattern BOTAN_PK_DH + , pattern BOTAN_PK_ECDH + , pattern BOTAN_PK_CURVE25519 + , pattern BOTAN_PK_DILITHIUM + , pattern BOTAN_PK_KYBER + , pattern BOTAN_PK_MCELIECE + + , pattern BOTAN_XMSS_SHA2_10_256 + , pattern BOTAN_XMSS_SHA2_16_256 + , pattern BOTAN_XMSS_SHA2_20_256 + , pattern BOTAN_XMSS_SHA2_10_512 + , pattern BOTAN_XMSS_SHA2_16_512 + , pattern BOTAN_XMSS_SHA2_20_512 + , pattern BOTAN_XMSS_SHAKE_10_256 + , pattern BOTAN_XMSS_SHAKE_16_256 + , pattern BOTAN_XMSS_SHAKE_20_256 + , pattern BOTAN_XMSS_SHAKE_10_512 + , pattern BOTAN_XMSS_SHAKE_16_512 + , pattern BOTAN_XMSS_SHAKE_20_512 + + , pattern BOTAN_ECGROUP_SECP_160_K1 + , pattern BOTAN_ECGROUP_SECP_160_R1 + , pattern BOTAN_ECGROUP_SECP_160_R2 + , pattern BOTAN_ECGROUP_SECP_192_K1 + , pattern BOTAN_ECGROUP_SECP_192_R1 + , pattern BOTAN_ECGROUP_SECP_224_K1 + , pattern BOTAN_ECGROUP_SECP_224_R1 + , pattern BOTAN_ECGROUP_SECP_256_K1 + , pattern BOTAN_ECGROUP_SECP_256_R1 + , pattern BOTAN_ECGROUP_SECP_384_R1 + , pattern BOTAN_ECGROUP_SECP_521_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_160_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_192_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_224_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_256_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_320_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_384_R1 + , pattern BOTAN_ECGROUP_BRAINPOOL_512_R1 + , pattern BOTAN_ECGROUP_X962_P192_V2 + , pattern BOTAN_ECGROUP_X962_P192_V3 + , pattern BOTAN_ECGROUP_X962_P239_V1 + , pattern BOTAN_ECGROUP_X962_P239_V2 + , pattern BOTAN_ECGROUP_X962_P239_V3 + , pattern BOTAN_ECGROUP_GOST_256A + , pattern BOTAN_ECGROUP_GOST_512A + , pattern BOTAN_ECGROUP_FRP_256_V1 + , pattern BOTAN_ECGROUP_SM2_P256_V1 + + , pattern BOTAN_DLGROUP_FFDHE_IETF_2048 + , pattern BOTAN_DLGROUP_FFDHE_IETF_3072 + , pattern BOTAN_DLGROUP_FFDHE_IETF_4096 + , pattern BOTAN_DLGROUP_FFDHE_IETF_6144 + , pattern BOTAN_DLGROUP_FFDHE_IETF_8192 + , pattern BOTAN_DLGROUP_MODP_IETF_1024 + , pattern BOTAN_DLGROUP_MODP_IETF_1536 + , pattern BOTAN_DLGROUP_MODP_IETF_2048 + , pattern BOTAN_DLGROUP_MODP_IETF_3072 + , pattern BOTAN_DLGROUP_MODP_IETF_4096 + , pattern BOTAN_DLGROUP_MODP_IETF_6144 + , pattern BOTAN_DLGROUP_MODP_IETF_8192 + , pattern BOTAN_DLGROUP_MODP_SRP_1024 + , pattern BOTAN_DLGROUP_MODP_SRP_1536 + , pattern BOTAN_DLGROUP_MODP_SRP_2048 + , pattern BOTAN_DLGROUP_MODP_SRP_3072 + , pattern BOTAN_DLGROUP_MODP_SRP_4096 + , pattern BOTAN_DLGROUP_MODP_SRP_6144 + , pattern BOTAN_DLGROUP_MODP_SRP_8192 + , pattern BOTAN_DLGROUP_DSA_JCE_1024 + , pattern BOTAN_DLGROUP_DSA_BOTAN_2048 + , pattern BOTAN_DLGROUP_DSA_BOTAN_3072 + + , pattern BOTAN_EME_RAW + , pattern BOTAN_EME_PKCS1_v1_5 + , pattern BOTAN_EME_OAEP + + , pattern BOTAN_MGF_MGF1 + + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Data.Word (Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_privkey_destroy_ptr :: FunPtr (Types.Botan_privkey_t -> IO CInt) +botan_privkey_destroy_ptr = FunPtr.botan_privkey_destroy + +botan_privkey_load :: Ptr Types.Botan_privkey_t -> Types.Botan_rng_t -> ConstPtr Word8 -> CSize -> ConstPtr CChar -> IO CInt +botan_privkey_load = Safe.botan_privkey_load_wrapper + +botan_pubkey_destroy_ptr :: FunPtr (Types.Botan_pubkey_t -> IO CInt) +botan_pubkey_destroy_ptr = FunPtr.botan_pubkey_destroy + +botan_pubkey_load :: Ptr Types.Botan_pubkey_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_pubkey_load = Safe.botan_pubkey_load_wrapper + +pattern BOTAN_PK_RSA + , BOTAN_PK_SM2 + , BOTAN_PK_ELGAMAL + , BOTAN_PK_DSA + , BOTAN_PK_ECDSA + , BOTAN_PK_ECKCDSA + , BOTAN_PK_ECGDSA + , BOTAN_PK_GOST_34_10 + , BOTAN_PK_ED25519 + , BOTAN_PK_XMSS + , BOTAN_PK_DH + , BOTAN_PK_ECDH + , BOTAN_PK_CURVE25519 + , BOTAN_PK_DILITHIUM + , BOTAN_PK_KYBER + -- , BOTAN_PK_SPHINCSPLUS + , BOTAN_PK_MCELIECE + :: (Eq a, IsString a) => a + +pattern BOTAN_PK_RSA = "RSA" +pattern BOTAN_PK_SM2 = "SM2" +pattern BOTAN_PK_ELGAMAL = "ElGamal" +pattern BOTAN_PK_DSA = "DSA" +pattern BOTAN_PK_ECDSA = "ECDSA" +pattern BOTAN_PK_ECKCDSA = "ECKCDSA" +pattern BOTAN_PK_ECGDSA = "ECGDSA" +pattern BOTAN_PK_GOST_34_10 = "GOST-34.10" +pattern BOTAN_PK_ED25519 = "Ed25519" +pattern BOTAN_PK_XMSS = "XMSS" +pattern BOTAN_PK_DH = "DH" +pattern BOTAN_PK_ECDH = "ECDH" +pattern BOTAN_PK_CURVE25519 = "Curve25519" +pattern BOTAN_PK_DILITHIUM = "Dilithium" +pattern BOTAN_PK_KYBER = "Kyber" +-- pattern BOTAN_PK_SPHINCSPLUS = "SPHINCS+" +pattern BOTAN_PK_MCELIECE = "McEliece" + +pattern BOTAN_XMSS_SHA2_10_256 + , BOTAN_XMSS_SHA2_16_256 + , BOTAN_XMSS_SHA2_20_256 + , BOTAN_XMSS_SHA2_10_512 + , BOTAN_XMSS_SHA2_16_512 + , BOTAN_XMSS_SHA2_20_512 + , BOTAN_XMSS_SHAKE_10_256 + , BOTAN_XMSS_SHAKE_16_256 + , BOTAN_XMSS_SHAKE_20_256 + , BOTAN_XMSS_SHAKE_10_512 + , BOTAN_XMSS_SHAKE_16_512 + , BOTAN_XMSS_SHAKE_20_512 + :: (Eq a, IsString a) => a + +pattern BOTAN_XMSS_SHA2_10_256 = "XMSS-SHA2_10_256" +pattern BOTAN_XMSS_SHA2_16_256 = "XMSS-SHA2_16_256" +pattern BOTAN_XMSS_SHA2_20_256 = "XMSS-SHA2_20_256" +pattern BOTAN_XMSS_SHA2_10_512 = "XMSS-SHA2_10_512" +pattern BOTAN_XMSS_SHA2_16_512 = "XMSS-SHA2_16_512" +pattern BOTAN_XMSS_SHA2_20_512 = "XMSS-SHA2_20_512" +pattern BOTAN_XMSS_SHAKE_10_256 = "XMSS-SHAKE_10_256" +pattern BOTAN_XMSS_SHAKE_16_256 = "XMSS-SHAKE_16_256" +pattern BOTAN_XMSS_SHAKE_20_256 = "XMSS-SHAKE_20_256" +pattern BOTAN_XMSS_SHAKE_10_512 = "XMSS-SHAKE_10_512" +pattern BOTAN_XMSS_SHAKE_16_512 = "XMSS-SHAKE_16_512" +pattern BOTAN_XMSS_SHAKE_20_512 = "XMSS-SHAKE_20_512" + +pattern BOTAN_ECGROUP_SECP_160_K1 + , BOTAN_ECGROUP_SECP_160_R1 + , BOTAN_ECGROUP_SECP_160_R2 + , BOTAN_ECGROUP_SECP_192_K1 + , BOTAN_ECGROUP_SECP_192_R1 + , BOTAN_ECGROUP_SECP_224_K1 + , BOTAN_ECGROUP_SECP_224_R1 + , BOTAN_ECGROUP_SECP_256_K1 + , BOTAN_ECGROUP_SECP_256_R1 + , BOTAN_ECGROUP_SECP_384_R1 + , BOTAN_ECGROUP_SECP_521_R1 + , BOTAN_ECGROUP_BRAINPOOL_160_R1 + , BOTAN_ECGROUP_BRAINPOOL_192_R1 + , BOTAN_ECGROUP_BRAINPOOL_224_R1 + , BOTAN_ECGROUP_BRAINPOOL_256_R1 + , BOTAN_ECGROUP_BRAINPOOL_320_R1 + , BOTAN_ECGROUP_BRAINPOOL_384_R1 + , BOTAN_ECGROUP_BRAINPOOL_512_R1 + , BOTAN_ECGROUP_X962_P192_V2 + , BOTAN_ECGROUP_X962_P192_V3 + , BOTAN_ECGROUP_X962_P239_V1 + , BOTAN_ECGROUP_X962_P239_V2 + , BOTAN_ECGROUP_X962_P239_V3 + , BOTAN_ECGROUP_GOST_256A + , BOTAN_ECGROUP_GOST_512A + , BOTAN_ECGROUP_FRP_256_V1 + , BOTAN_ECGROUP_SM2_P256_V1 + :: (Eq a, IsString a) => a + +pattern BOTAN_ECGROUP_SECP_160_K1 = "secp160k1" +pattern BOTAN_ECGROUP_SECP_160_R1 = "secp160r1" +pattern BOTAN_ECGROUP_SECP_160_R2 = "secp160r2" +pattern BOTAN_ECGROUP_SECP_192_K1 = "secp192k1" +pattern BOTAN_ECGROUP_SECP_192_R1 = "secp192r1" +pattern BOTAN_ECGROUP_SECP_224_K1 = "secp224k1" +pattern BOTAN_ECGROUP_SECP_224_R1 = "secp224r1" +pattern BOTAN_ECGROUP_SECP_256_K1 = "secp256k1" +pattern BOTAN_ECGROUP_SECP_256_R1 = "secp256r1" +pattern BOTAN_ECGROUP_SECP_384_R1 = "secp384r1" +pattern BOTAN_ECGROUP_SECP_521_R1 = "secp521r1" +pattern BOTAN_ECGROUP_BRAINPOOL_160_R1 = "brainpool160r1" +pattern BOTAN_ECGROUP_BRAINPOOL_192_R1 = "brainpool192r1" +pattern BOTAN_ECGROUP_BRAINPOOL_224_R1 = "brainpool224r1" +pattern BOTAN_ECGROUP_BRAINPOOL_256_R1 = "brainpool256r1" +pattern BOTAN_ECGROUP_BRAINPOOL_320_R1 = "brainpool320r1" +pattern BOTAN_ECGROUP_BRAINPOOL_384_R1 = "brainpool384r1" +pattern BOTAN_ECGROUP_BRAINPOOL_512_R1 = "brainpool512r1" +pattern BOTAN_ECGROUP_X962_P192_V2 = "x962_p192v2" +pattern BOTAN_ECGROUP_X962_P192_V3 = "x962_p192v3" +pattern BOTAN_ECGROUP_X962_P239_V1 = "x962_p239v1" +pattern BOTAN_ECGROUP_X962_P239_V2 = "x962_p239v2" +pattern BOTAN_ECGROUP_X962_P239_V3 = "x962_p239v3" +pattern BOTAN_ECGROUP_GOST_256A = "gost_256A" +pattern BOTAN_ECGROUP_GOST_512A = "gost_512A" +pattern BOTAN_ECGROUP_FRP_256_V1 = "frp256v1" +pattern BOTAN_ECGROUP_SM2_P256_V1 = "sm2p256v1" + +pattern BOTAN_DLGROUP_FFDHE_IETF_2048 + , BOTAN_DLGROUP_FFDHE_IETF_3072 + , BOTAN_DLGROUP_FFDHE_IETF_4096 + , BOTAN_DLGROUP_FFDHE_IETF_6144 + , BOTAN_DLGROUP_FFDHE_IETF_8192 + , BOTAN_DLGROUP_MODP_IETF_1024 + , BOTAN_DLGROUP_MODP_IETF_1536 + , BOTAN_DLGROUP_MODP_IETF_2048 + , BOTAN_DLGROUP_MODP_IETF_3072 + , BOTAN_DLGROUP_MODP_IETF_4096 + , BOTAN_DLGROUP_MODP_IETF_6144 + , BOTAN_DLGROUP_MODP_IETF_8192 + , BOTAN_DLGROUP_MODP_SRP_1024 + , BOTAN_DLGROUP_MODP_SRP_1536 + , BOTAN_DLGROUP_MODP_SRP_2048 + , BOTAN_DLGROUP_MODP_SRP_3072 + , BOTAN_DLGROUP_MODP_SRP_4096 + , BOTAN_DLGROUP_MODP_SRP_6144 + , BOTAN_DLGROUP_MODP_SRP_8192 + , BOTAN_DLGROUP_DSA_JCE_1024 + , BOTAN_DLGROUP_DSA_BOTAN_2048 + , BOTAN_DLGROUP_DSA_BOTAN_3072 + :: (Eq a, IsString a) => a + +pattern BOTAN_DLGROUP_FFDHE_IETF_2048 = "ffdhe/ietf/2048" +pattern BOTAN_DLGROUP_FFDHE_IETF_3072 = "ffdhe/ietf/3072" +pattern BOTAN_DLGROUP_FFDHE_IETF_4096 = "ffdhe/ietf/4096" +pattern BOTAN_DLGROUP_FFDHE_IETF_6144 = "ffdhe/ietf/6144" +pattern BOTAN_DLGROUP_FFDHE_IETF_8192 = "ffdhe/ietf/8192" +pattern BOTAN_DLGROUP_MODP_IETF_1024 = "modp/ietf/1024" +pattern BOTAN_DLGROUP_MODP_IETF_1536 = "modp/ietf/1536" +pattern BOTAN_DLGROUP_MODP_IETF_2048 = "modp/ietf/2048" +pattern BOTAN_DLGROUP_MODP_IETF_3072 = "modp/ietf/3072" +pattern BOTAN_DLGROUP_MODP_IETF_4096 = "modp/ietf/4096" +pattern BOTAN_DLGROUP_MODP_IETF_6144 = "modp/ietf/6144" +pattern BOTAN_DLGROUP_MODP_IETF_8192 = "modp/ietf/8192" +pattern BOTAN_DLGROUP_MODP_SRP_1024 = "modp/srp/1024" +pattern BOTAN_DLGROUP_MODP_SRP_1536 = "modp/srp/1536" +pattern BOTAN_DLGROUP_MODP_SRP_2048 = "modp/srp/2048" +pattern BOTAN_DLGROUP_MODP_SRP_3072 = "modp/srp/3072" +pattern BOTAN_DLGROUP_MODP_SRP_4096 = "modp/srp/4096" +pattern BOTAN_DLGROUP_MODP_SRP_6144 = "modp/srp/6144" +pattern BOTAN_DLGROUP_MODP_SRP_8192 = "modp/srp/8192" +pattern BOTAN_DLGROUP_DSA_JCE_1024 = "dsa/jce/1024" +pattern BOTAN_DLGROUP_DSA_BOTAN_2048 = "dsa/botan/2048" +pattern BOTAN_DLGROUP_DSA_BOTAN_3072 = "dsa/botan/3072" + +pattern BOTAN_EME_RAW + , BOTAN_EME_PKCS1_v1_5 + , BOTAN_EME_OAEP + :: (Eq a, IsString a) => a + +pattern BOTAN_EME_RAW = "Raw" +pattern BOTAN_EME_PKCS1_v1_5 = "PKCS1v15" +pattern BOTAN_EME_OAEP = "OAEP" + +pattern BOTAN_MGF_MGF1 + :: (Eq a, IsString a) => a + +pattern BOTAN_MGF_MGF1 = "MGF1" diff --git a/botan-bindings/src/Botan/Bindings/PubKey.hsc b/botan-bindings/src/Botan/Bindings/PubKey.hsc deleted file mode 100644 index 9d1e43f6..00000000 --- a/botan-bindings/src/Botan/Bindings/PubKey.hsc +++ /dev/null @@ -1,637 +0,0 @@ -{-| -Module : Botan.Bindings.PubKey -Description : Public key cryptography -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX - -Public key cryptography is a collection of techniques allowing -for encryption, signatures, and key agreement. --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.PubKey ( - BotanPrivKeyStruct - , BotanPrivKey (..) - , botan_privkey_destroy - , pattern BOTAN_PK_RSA - , pattern BOTAN_PK_SM2 - , pattern BOTAN_PK_ELGAMAL - , pattern BOTAN_PK_DSA - , pattern BOTAN_PK_ECDSA - , pattern BOTAN_PK_ECKCDSA - , pattern BOTAN_PK_ECGDSA - , pattern BOTAN_PK_GOST_34_10 - , pattern BOTAN_PK_ED25519 - , pattern BOTAN_PK_XMSS - , pattern BOTAN_PK_DH - , pattern BOTAN_PK_ECDH - , pattern BOTAN_PK_CURVE25519 - , pattern BOTAN_PK_DILITHIUM - , pattern BOTAN_PK_KYBER - , pattern BOTAN_PK_MCELIECE - - , pattern BOTAN_XMSS_SHA2_10_256 - , pattern BOTAN_XMSS_SHA2_16_256 - , pattern BOTAN_XMSS_SHA2_20_256 - , pattern BOTAN_XMSS_SHA2_10_512 - , pattern BOTAN_XMSS_SHA2_16_512 - , pattern BOTAN_XMSS_SHA2_20_512 - , pattern BOTAN_XMSS_SHAKE_10_256 - , pattern BOTAN_XMSS_SHAKE_16_256 - , pattern BOTAN_XMSS_SHAKE_20_256 - , pattern BOTAN_XMSS_SHAKE_10_512 - , pattern BOTAN_XMSS_SHAKE_16_512 - , pattern BOTAN_XMSS_SHAKE_20_512 - - , pattern BOTAN_ECGROUP_SECP_160_K1 - , pattern BOTAN_ECGROUP_SECP_160_R1 - , pattern BOTAN_ECGROUP_SECP_160_R2 - , pattern BOTAN_ECGROUP_SECP_192_K1 - , pattern BOTAN_ECGROUP_SECP_192_R1 - , pattern BOTAN_ECGROUP_SECP_224_K1 - , pattern BOTAN_ECGROUP_SECP_224_R1 - , pattern BOTAN_ECGROUP_SECP_256_K1 - , pattern BOTAN_ECGROUP_SECP_256_R1 - , pattern BOTAN_ECGROUP_SECP_384_R1 - , pattern BOTAN_ECGROUP_SECP_521_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_160_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_192_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_224_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_256_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_320_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_384_R1 - , pattern BOTAN_ECGROUP_BRAINPOOL_512_R1 - , pattern BOTAN_ECGROUP_X962_P192_V2 - , pattern BOTAN_ECGROUP_X962_P192_V3 - , pattern BOTAN_ECGROUP_X962_P239_V1 - , pattern BOTAN_ECGROUP_X962_P239_V2 - , pattern BOTAN_ECGROUP_X962_P239_V3 - , pattern BOTAN_ECGROUP_GOST_256A - , pattern BOTAN_ECGROUP_GOST_512A - , pattern BOTAN_ECGROUP_FRP_256_V1 - , pattern BOTAN_ECGROUP_SM2_P256_V1 - - , pattern BOTAN_DLGROUP_FFDHE_IETF_2048 - , pattern BOTAN_DLGROUP_FFDHE_IETF_3072 - , pattern BOTAN_DLGROUP_FFDHE_IETF_4096 - , pattern BOTAN_DLGROUP_FFDHE_IETF_6144 - , pattern BOTAN_DLGROUP_FFDHE_IETF_8192 - , pattern BOTAN_DLGROUP_MODP_IETF_1024 - , pattern BOTAN_DLGROUP_MODP_IETF_1536 - , pattern BOTAN_DLGROUP_MODP_IETF_2048 - , pattern BOTAN_DLGROUP_MODP_IETF_3072 - , pattern BOTAN_DLGROUP_MODP_IETF_4096 - , pattern BOTAN_DLGROUP_MODP_IETF_6144 - , pattern BOTAN_DLGROUP_MODP_IETF_8192 - , pattern BOTAN_DLGROUP_MODP_SRP_1024 - , pattern BOTAN_DLGROUP_MODP_SRP_1536 - , pattern BOTAN_DLGROUP_MODP_SRP_2048 - , pattern BOTAN_DLGROUP_MODP_SRP_3072 - , pattern BOTAN_DLGROUP_MODP_SRP_4096 - , pattern BOTAN_DLGROUP_MODP_SRP_6144 - , pattern BOTAN_DLGROUP_MODP_SRP_8192 - , pattern BOTAN_DLGROUP_DSA_JCE_1024 - , pattern BOTAN_DLGROUP_DSA_BOTAN_2048 - , pattern BOTAN_DLGROUP_DSA_BOTAN_3072 - - , pattern BOTAN_EME_RAW - , pattern BOTAN_EME_PKCS1_v1_5 - , pattern BOTAN_EME_OAEP - - , pattern BOTAN_MGF_MGF1 - , botan_privkey_create - , pattern BOTAN_CHECK_KEY_NORMAL_TESTS - , pattern BOTAN_CHECK_KEY_EXPENSIVE_TESTS - , botan_privkey_check_key - , botan_privkey_load - , pattern BOTAN_PRIVKEY_EXPORT_FLAG_DER - , pattern BOTAN_PRIVKEY_EXPORT_FLAG_PEM - , botan_privkey_export - , botan_privkey_view_der - , botan_privkey_view_pem - , botan_privkey_algo_name - , botan_privkey_export_encrypted_pbkdf_msec - , botan_privkey_export_encrypted_pbkdf_iter - , botan_privkey_view_encrypted_der - , botan_privkey_view_encrypted_der_timed - , botan_privkey_view_encrypted_pem - , botan_privkey_view_encrypted_pem_timed - , botan_privkey_get_field - , BotanPubKeyStruct - , BotanPubKey (..) - , botan_pubkey_destroy - , botan_privkey_export_pubkey - , botan_pubkey_load - , pattern BOTAN_PUBKEY_EXPORT_FLAG_DER - , pattern BOTAN_PUBKEY_EXPORT_FLAG_PEM - , botan_pubkey_export - , botan_pubkey_view_der - , botan_pubkey_view_pem - , botan_pubkey_algo_name - , botan_pubkey_check_key - , botan_pubkey_estimated_strength - , botan_pubkey_fingerprint - , botan_pubkey_get_field - , botan_pubkey_view_ec_public_point - ) where - -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.RNG -import Botan.Bindings.View - -#include - --- | Opaque PrivKey struct -data {-# CTYPE "botan/ffi.h" "struct botan_privkey_struct" #-} BotanPrivKeyStruct - --- | Botan PrivKey object -newtype {-# CTYPE "botan/ffi.h" "botan_privkey_t" #-} BotanPrivKey - = MkBotanPrivKey { runBotanPrivKey :: Ptr BotanPrivKeyStruct } - deriving newtype (Eq, Ord, Storable) - --- | Frees all resources of the PrivKey object -foreign import capi safe "botan/ffi.h &botan_privkey_destroy" - botan_privkey_destroy - :: FinalizerPtr BotanPrivKeyStruct - -pattern BOTAN_PK_RSA - , BOTAN_PK_SM2 - , BOTAN_PK_ELGAMAL - , BOTAN_PK_DSA - , BOTAN_PK_ECDSA - , BOTAN_PK_ECKCDSA - , BOTAN_PK_ECGDSA - , BOTAN_PK_GOST_34_10 - , BOTAN_PK_ED25519 - , BOTAN_PK_XMSS - , BOTAN_PK_DH - , BOTAN_PK_ECDH - , BOTAN_PK_CURVE25519 - , BOTAN_PK_DILITHIUM - , BOTAN_PK_KYBER - -- , BOTAN_PK_SPHINCSPLUS - , BOTAN_PK_MCELIECE - :: (Eq a, IsString a) => a - -pattern BOTAN_PK_RSA = "RSA" -pattern BOTAN_PK_SM2 = "SM2" -pattern BOTAN_PK_ELGAMAL = "ElGamal" -pattern BOTAN_PK_DSA = "DSA" -pattern BOTAN_PK_ECDSA = "ECDSA" -pattern BOTAN_PK_ECKCDSA = "ECKCDSA" -pattern BOTAN_PK_ECGDSA = "ECGDSA" -pattern BOTAN_PK_GOST_34_10 = "GOST-34.10" -pattern BOTAN_PK_ED25519 = "Ed25519" -pattern BOTAN_PK_XMSS = "XMSS" -pattern BOTAN_PK_DH = "DH" -pattern BOTAN_PK_ECDH = "ECDH" -pattern BOTAN_PK_CURVE25519 = "Curve25519" -pattern BOTAN_PK_DILITHIUM = "Dilithium" -pattern BOTAN_PK_KYBER = "Kyber" --- pattern BOTAN_PK_SPHINCSPLUS = "SPHINCS+" -pattern BOTAN_PK_MCELIECE = "McEliece" - -pattern BOTAN_XMSS_SHA2_10_256 - , BOTAN_XMSS_SHA2_16_256 - , BOTAN_XMSS_SHA2_20_256 - , BOTAN_XMSS_SHA2_10_512 - , BOTAN_XMSS_SHA2_16_512 - , BOTAN_XMSS_SHA2_20_512 - , BOTAN_XMSS_SHAKE_10_256 - , BOTAN_XMSS_SHAKE_16_256 - , BOTAN_XMSS_SHAKE_20_256 - , BOTAN_XMSS_SHAKE_10_512 - , BOTAN_XMSS_SHAKE_16_512 - , BOTAN_XMSS_SHAKE_20_512 - :: (Eq a, IsString a) => a - -pattern BOTAN_XMSS_SHA2_10_256 = "XMSS-SHA2_10_256" -pattern BOTAN_XMSS_SHA2_16_256 = "XMSS-SHA2_16_256" -pattern BOTAN_XMSS_SHA2_20_256 = "XMSS-SHA2_20_256" -pattern BOTAN_XMSS_SHA2_10_512 = "XMSS-SHA2_10_512" -pattern BOTAN_XMSS_SHA2_16_512 = "XMSS-SHA2_16_512" -pattern BOTAN_XMSS_SHA2_20_512 = "XMSS-SHA2_20_512" -pattern BOTAN_XMSS_SHAKE_10_256 = "XMSS-SHAKE_10_256" -pattern BOTAN_XMSS_SHAKE_16_256 = "XMSS-SHAKE_16_256" -pattern BOTAN_XMSS_SHAKE_20_256 = "XMSS-SHAKE_20_256" -pattern BOTAN_XMSS_SHAKE_10_512 = "XMSS-SHAKE_10_512" -pattern BOTAN_XMSS_SHAKE_16_512 = "XMSS-SHAKE_16_512" -pattern BOTAN_XMSS_SHAKE_20_512 = "XMSS-SHAKE_20_512" - -pattern BOTAN_ECGROUP_SECP_160_K1 - , BOTAN_ECGROUP_SECP_160_R1 - , BOTAN_ECGROUP_SECP_160_R2 - , BOTAN_ECGROUP_SECP_192_K1 - , BOTAN_ECGROUP_SECP_192_R1 - , BOTAN_ECGROUP_SECP_224_K1 - , BOTAN_ECGROUP_SECP_224_R1 - , BOTAN_ECGROUP_SECP_256_K1 - , BOTAN_ECGROUP_SECP_256_R1 - , BOTAN_ECGROUP_SECP_384_R1 - , BOTAN_ECGROUP_SECP_521_R1 - , BOTAN_ECGROUP_BRAINPOOL_160_R1 - , BOTAN_ECGROUP_BRAINPOOL_192_R1 - , BOTAN_ECGROUP_BRAINPOOL_224_R1 - , BOTAN_ECGROUP_BRAINPOOL_256_R1 - , BOTAN_ECGROUP_BRAINPOOL_320_R1 - , BOTAN_ECGROUP_BRAINPOOL_384_R1 - , BOTAN_ECGROUP_BRAINPOOL_512_R1 - , BOTAN_ECGROUP_X962_P192_V2 - , BOTAN_ECGROUP_X962_P192_V3 - , BOTAN_ECGROUP_X962_P239_V1 - , BOTAN_ECGROUP_X962_P239_V2 - , BOTAN_ECGROUP_X962_P239_V3 - , BOTAN_ECGROUP_GOST_256A - , BOTAN_ECGROUP_GOST_512A - , BOTAN_ECGROUP_FRP_256_V1 - , BOTAN_ECGROUP_SM2_P256_V1 - :: (Eq a, IsString a) => a - -pattern BOTAN_ECGROUP_SECP_160_K1 = "secp160k1" -pattern BOTAN_ECGROUP_SECP_160_R1 = "secp160r1" -pattern BOTAN_ECGROUP_SECP_160_R2 = "secp160r2" -pattern BOTAN_ECGROUP_SECP_192_K1 = "secp192k1" -pattern BOTAN_ECGROUP_SECP_192_R1 = "secp192r1" -pattern BOTAN_ECGROUP_SECP_224_K1 = "secp224k1" -pattern BOTAN_ECGROUP_SECP_224_R1 = "secp224r1" -pattern BOTAN_ECGROUP_SECP_256_K1 = "secp256k1" -pattern BOTAN_ECGROUP_SECP_256_R1 = "secp256r1" -pattern BOTAN_ECGROUP_SECP_384_R1 = "secp384r1" -pattern BOTAN_ECGROUP_SECP_521_R1 = "secp521r1" -pattern BOTAN_ECGROUP_BRAINPOOL_160_R1 = "brainpool160r1" -pattern BOTAN_ECGROUP_BRAINPOOL_192_R1 = "brainpool192r1" -pattern BOTAN_ECGROUP_BRAINPOOL_224_R1 = "brainpool224r1" -pattern BOTAN_ECGROUP_BRAINPOOL_256_R1 = "brainpool256r1" -pattern BOTAN_ECGROUP_BRAINPOOL_320_R1 = "brainpool320r1" -pattern BOTAN_ECGROUP_BRAINPOOL_384_R1 = "brainpool384r1" -pattern BOTAN_ECGROUP_BRAINPOOL_512_R1 = "brainpool512r1" -pattern BOTAN_ECGROUP_X962_P192_V2 = "x962_p192v2" -pattern BOTAN_ECGROUP_X962_P192_V3 = "x962_p192v3" -pattern BOTAN_ECGROUP_X962_P239_V1 = "x962_p239v1" -pattern BOTAN_ECGROUP_X962_P239_V2 = "x962_p239v2" -pattern BOTAN_ECGROUP_X962_P239_V3 = "x962_p239v3" -pattern BOTAN_ECGROUP_GOST_256A = "gost_256A" -pattern BOTAN_ECGROUP_GOST_512A = "gost_512A" -pattern BOTAN_ECGROUP_FRP_256_V1 = "frp256v1" -pattern BOTAN_ECGROUP_SM2_P256_V1 = "sm2p256v1" - -pattern BOTAN_DLGROUP_FFDHE_IETF_2048 - , BOTAN_DLGROUP_FFDHE_IETF_3072 - , BOTAN_DLGROUP_FFDHE_IETF_4096 - , BOTAN_DLGROUP_FFDHE_IETF_6144 - , BOTAN_DLGROUP_FFDHE_IETF_8192 - , BOTAN_DLGROUP_MODP_IETF_1024 - , BOTAN_DLGROUP_MODP_IETF_1536 - , BOTAN_DLGROUP_MODP_IETF_2048 - , BOTAN_DLGROUP_MODP_IETF_3072 - , BOTAN_DLGROUP_MODP_IETF_4096 - , BOTAN_DLGROUP_MODP_IETF_6144 - , BOTAN_DLGROUP_MODP_IETF_8192 - , BOTAN_DLGROUP_MODP_SRP_1024 - , BOTAN_DLGROUP_MODP_SRP_1536 - , BOTAN_DLGROUP_MODP_SRP_2048 - , BOTAN_DLGROUP_MODP_SRP_3072 - , BOTAN_DLGROUP_MODP_SRP_4096 - , BOTAN_DLGROUP_MODP_SRP_6144 - , BOTAN_DLGROUP_MODP_SRP_8192 - , BOTAN_DLGROUP_DSA_JCE_1024 - , BOTAN_DLGROUP_DSA_BOTAN_2048 - , BOTAN_DLGROUP_DSA_BOTAN_3072 - :: (Eq a, IsString a) => a - -pattern BOTAN_DLGROUP_FFDHE_IETF_2048 = "ffdhe/ietf/2048" -pattern BOTAN_DLGROUP_FFDHE_IETF_3072 = "ffdhe/ietf/3072" -pattern BOTAN_DLGROUP_FFDHE_IETF_4096 = "ffdhe/ietf/4096" -pattern BOTAN_DLGROUP_FFDHE_IETF_6144 = "ffdhe/ietf/6144" -pattern BOTAN_DLGROUP_FFDHE_IETF_8192 = "ffdhe/ietf/8192" -pattern BOTAN_DLGROUP_MODP_IETF_1024 = "modp/ietf/1024" -pattern BOTAN_DLGROUP_MODP_IETF_1536 = "modp/ietf/1536" -pattern BOTAN_DLGROUP_MODP_IETF_2048 = "modp/ietf/2048" -pattern BOTAN_DLGROUP_MODP_IETF_3072 = "modp/ietf/3072" -pattern BOTAN_DLGROUP_MODP_IETF_4096 = "modp/ietf/4096" -pattern BOTAN_DLGROUP_MODP_IETF_6144 = "modp/ietf/6144" -pattern BOTAN_DLGROUP_MODP_IETF_8192 = "modp/ietf/8192" -pattern BOTAN_DLGROUP_MODP_SRP_1024 = "modp/srp/1024" -pattern BOTAN_DLGROUP_MODP_SRP_1536 = "modp/srp/1536" -pattern BOTAN_DLGROUP_MODP_SRP_2048 = "modp/srp/2048" -pattern BOTAN_DLGROUP_MODP_SRP_3072 = "modp/srp/3072" -pattern BOTAN_DLGROUP_MODP_SRP_4096 = "modp/srp/4096" -pattern BOTAN_DLGROUP_MODP_SRP_6144 = "modp/srp/6144" -pattern BOTAN_DLGROUP_MODP_SRP_8192 = "modp/srp/8192" -pattern BOTAN_DLGROUP_DSA_JCE_1024 = "dsa/jce/1024" -pattern BOTAN_DLGROUP_DSA_BOTAN_2048 = "dsa/botan/2048" -pattern BOTAN_DLGROUP_DSA_BOTAN_3072 = "dsa/botan/3072" - -pattern BOTAN_EME_RAW - , BOTAN_EME_PKCS1_v1_5 - , BOTAN_EME_OAEP - :: (Eq a, IsString a) => a - -pattern BOTAN_EME_RAW = "Raw" -pattern BOTAN_EME_PKCS1_v1_5 = "PKCS1v15" -pattern BOTAN_EME_OAEP = "OAEP" - -pattern BOTAN_MGF_MGF1 - :: (Eq a, IsString a) => a - -pattern BOTAN_MGF_MGF1 = "MGF1" - --- | Create a new private key -foreign import capi safe "botan/ffi.h botan_privkey_create" - botan_privkey_create - :: Ptr BotanPrivKey -- ^ __key__: the new object will be placed here - -> ConstPtr CChar -- ^ __algo_name__: something like "RSA" or "ECDSA" - -> ConstPtr CChar -- ^ __algo_params__: is specific to the algorithm. For RSA, specifies - -- the modulus bit length. For ECC is the name of the curve. - -> BotanRNG -- ^ __rng__: a random number generator - -> IO CInt - -pattern BOTAN_CHECK_KEY_NORMAL_TESTS - , BOTAN_CHECK_KEY_EXPENSIVE_TESTS - :: (Eq a, Num a) => a -pattern BOTAN_CHECK_KEY_NORMAL_TESTS = 0 -pattern BOTAN_CHECK_KEY_EXPENSIVE_TESTS = #const BOTAN_CHECK_KEY_EXPENSIVE_TESTS - --- | Check the validity of a private key -foreign import capi safe "botan/ffi.h botan_privkey_check_key" - botan_privkey_check_key - :: BotanPrivKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> Word32 -- ^ __flags__ - -> IO CInt - -{- | -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 --} -foreign import capi safe "botan/ffi.h botan_privkey_load" - botan_privkey_load - :: Ptr BotanPrivKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr Word8 -- ^ __bits[]__ - -> CSize -- ^ __len__ - -> ConstPtr CChar -- ^ __password__ - -> IO CInt - -pattern BOTAN_PRIVKEY_EXPORT_FLAG_DER - , BOTAN_PRIVKEY_EXPORT_FLAG_PEM - :: (Eq a, Num a) => a -pattern BOTAN_PRIVKEY_EXPORT_FLAG_DER = #const BOTAN_PRIVKEY_EXPORT_FLAG_DER -pattern BOTAN_PRIVKEY_EXPORT_FLAG_PEM = #const BOTAN_PRIVKEY_EXPORT_FLAG_PEM - -{- | -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. --} -foreign import capi safe "botan/ffi.h botan_privkey_export" - botan_privkey_export - :: BotanPrivKey -- ^ __key__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> Word32 -- ^ __flags__ - -> IO CInt - --- | View the private key's DER encoding -foreign import capi safe "botan/ffi.h botan_privkey_view_der" - botan_privkey_view_der - :: BotanPrivKey -- ^ __key__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO CInt - --- | View the private key's PEM encoding -foreign import capi safe "botan/ffi.h botan_privkey_view_pem" - botan_privkey_view_pem - :: BotanPrivKey -- ^ __key__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewStrCallback ctx -- ^ __view__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_privkey_algo_name" - botan_privkey_algo_name - :: BotanPrivKey -- ^ __key__ - -> Ptr CChar -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -{- | -Export a private key, running PBKDF for specified amount of time - -Note: starting in 3.0, the output iterations count is not provided --} -foreign import capi safe "botan/ffi.h botan_privkey_export_encrypted_pbkdf_msec" - botan_privkey_export_encrypted_pbkdf_msec - :: BotanPrivKey -- ^ __key__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __passphrase__ - -> Word32 -- ^ __pbkdf_msec_runtime__ - -> Ptr CSize -- ^ __pbkdf_iterations_out__ - -> ConstPtr CChar -- ^ __cipher_algo__ - -> ConstPtr CChar -- ^ __pbkdf_algo__ - -> Word32 -- ^ __flags__ - -> IO CInt - --- | Export a private key using the specified number of iterations. -foreign import capi safe "botan/ffi.h botan_privkey_export_encrypted_pbkdf_iter" - botan_privkey_export_encrypted_pbkdf_iter - :: BotanPrivKey -- ^ __key__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __passphrase__ - -> CSize -- ^ __pbkdf_iterations__ - -> ConstPtr CChar -- ^ __cipher_algo__ - -> ConstPtr CChar -- ^ __pbkdf_algo__ - -> Word32 -- ^ __flags__ - -> IO 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 --} -foreign import capi safe "botan/ffi.h botan_privkey_view_encrypted_der" - botan_privkey_view_encrypted_der - :: BotanPrivKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __passphrase__ - -> ConstPtr CChar -- ^ __cipher_algo__ - -> ConstPtr CChar -- ^ __pbkdf_algo__ - -> CSize -- ^ __pbkdf_iterations__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO CInt - -{- | -View the encryption of a private key (binary DER encoding) - -Set cipher_algo, pbkdf_algo to NULL to use defaults --} -foreign import capi safe "botan/ffi.h botan_privkey_view_encrypted_der_timed" - botan_privkey_view_encrypted_der_timed - :: BotanPrivKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __passphrase__ - -> ConstPtr CChar -- ^ __cipher_algo__ - -> ConstPtr CChar -- ^ __pbkdf_algo__ - -> CSize -- ^ __pbkdf_runtime_msec__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO 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 --} -foreign import capi safe "botan/ffi.h botan_privkey_view_encrypted_pem" - botan_privkey_view_encrypted_pem - :: BotanPrivKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __passphrase__ - -> ConstPtr CChar -- ^ __cipher_algo__ - -> ConstPtr CChar -- ^ __pbkdf_algo__ - -> CSize -- ^ __pbkdf_iterations__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewStrCallback ctx -- ^ __view__ - -> IO CInt - -{- | -View the encryption of a private key (PEM encoding) - -Set cipher_algo, pbkdf_algo to NULL to use defaults --} -foreign import capi safe "botan/ffi.h botan_privkey_view_encrypted_pem_timed" - botan_privkey_view_encrypted_pem_timed - :: BotanPrivKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __passphrase__ - -> ConstPtr CChar -- ^ __cipher_algo__ - -> ConstPtr CChar -- ^ __pbkdf_algo__ - -> CSize -- ^ __pbkdf_runtime_msec__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewStrCallback ctx -- ^ __view__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_privkey_get_field" - botan_privkey_get_field - :: BotanMP -- ^ __output__ - -> BotanPrivKey -- ^ __key__ - -> ConstPtr CChar -- ^ __field_name__ - -> IO CInt - - --- | Opaque PubKey struct -data {-# CTYPE "botan/ffi.h" "struct botan_pubkey_struct" #-} BotanPubKeyStruct - --- | Botan PubKey object -newtype {-# CTYPE "botan/ffi.h" "botan_pubkey_t" #-} BotanPubKey - = MkBotanPubKey { runBotanPubKey :: Ptr BotanPubKeyStruct } - deriving newtype (Eq, Ord, Storable) - --- | Frees all resources of the PubKey object -foreign import capi safe "botan/ffi.h &botan_pubkey_destroy" - botan_pubkey_destroy - :: FinalizerPtr BotanPubKeyStruct - -foreign import capi safe "botan/ffi.h botan_privkey_export_pubkey" - botan_privkey_export_pubkey - :: Ptr BotanPubKey -- ^ __out__ - -> BotanPrivKey -- ^ __in__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_load" - botan_pubkey_load - :: Ptr BotanPubKey -- ^ __key__ - -> ConstPtr Word8 -- ^ __bits[]__ - -> CSize -- ^ __len__ - -> IO CInt - -pattern BOTAN_PUBKEY_EXPORT_FLAG_DER -- ^ __BOTAN_PRIVKEY_EXPORT_FLAG_DER__ in disguise - , BOTAN_PUBKEY_EXPORT_FLAG_PEM -- ^ __BOTAN_PRIVKEY_EXPORT_FLAG_PEM__ in disguise - :: (Eq a, Num a) => a -pattern BOTAN_PUBKEY_EXPORT_FLAG_DER = BOTAN_PRIVKEY_EXPORT_FLAG_DER -pattern BOTAN_PUBKEY_EXPORT_FLAG_PEM = BOTAN_PRIVKEY_EXPORT_FLAG_PEM - -foreign import capi safe "botan/ffi.h botan_pubkey_export" - botan_pubkey_export - :: BotanPubKey -- ^ __key__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> Word32 -- ^ __flags__ - -> IO CInt - --- | View the public key's DER encoding -foreign import capi safe "botan/ffi.h botan_pubkey_view_der" - botan_pubkey_view_der - :: BotanPubKey -- ^ __key__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO CInt - - -- | View the public key's PEM encoding -foreign import capi safe "botan/ffi.h botan_pubkey_view_pem" - botan_pubkey_view_pem - :: BotanPubKey -- ^ __key__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewStrCallback ctx -- ^ __view__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_algo_name" - botan_pubkey_algo_name - :: BotanPubKey -- ^ __key__ - -> Ptr CChar -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - --- | Returns 0 if key is valid, negative if invalid key or some other error -foreign import capi safe "botan/ffi.h botan_pubkey_check_key" - botan_pubkey_check_key - :: BotanPubKey -- ^ __key__ - -> BotanRNG -- ^ __rng__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_estimated_strength" - botan_pubkey_estimated_strength - :: BotanPubKey -- ^ __key__ - -> Ptr CSize -- ^ __estimate__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_fingerprint" - botan_pubkey_fingerprint - :: BotanPubKey -- ^ __key__ - -> ConstPtr CChar -- ^ __hash__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - --- | Get arbitrary named fields from public or private keys -foreign import capi safe "botan/ffi.h botan_pubkey_get_field" - botan_pubkey_get_field - :: BotanMP -- ^ __output__ - -> BotanPubKey -- ^ __key__ - -> ConstPtr CChar -- ^ __field_name__ - -> IO CInt - --- | View the uncompressed public point associated with the key -foreign import capi safe "botan/ffi.h botan_pubkey_view_ec_public_point" - botan_pubkey_view_ec_public_point - :: BotanPubKey -- ^ __key__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/PubKey/DH.hs b/botan-bindings/src/Botan/Bindings/PubKey/DH.hs index 3cd97466..9690916b 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/DH.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/DH.hs @@ -9,31 +9,9 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.DH ( - botan_privkey_load_dh - , botan_pubkey_load_dh + Safe.botan_privkey_load_dh + , Safe.botan_pubkey_load_dh ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - --- | Loads Diffie Hellman private key -foreign import capi safe "botan/ffi.h botan_privkey_load_dh" - botan_privkey_load_dh - :: Ptr BotanPrivKey -- ^ __key__: variable populated with key material - -> BotanMP -- ^ __p__: prime order of a Z_p group - -> BotanMP -- ^ __g__: group generator - -> BotanMP -- ^ __x__: private key - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Loads Diffie Hellman public key -foreign import capi safe "botan/ffi.h botan_pubkey_load_dh" - botan_pubkey_load_dh - :: Ptr BotanPubKey -- ^ __key__: variable populated with key material - -> BotanMP -- ^ __p__: prime order of a Z_p group - -> BotanMP -- ^ __g__: group generator - -> BotanMP -- ^ __y__: public key - -> IO CInt -- ^ 0 on success, a negative value on failure +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/PubKey/DSA.hs b/botan-bindings/src/Botan/Bindings/PubKey/DSA.hs index 600bf80a..60b88ff8 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/DSA.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/DSA.hs @@ -9,50 +9,10 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.DSA ( - botan_privkey_create_dsa - , botan_privkey_load_dsa - , botan_pubkey_load_dsa + Safe.botan_privkey_create_dsa + , Safe.botan_privkey_load_dsa + , Safe.botan_pubkey_load_dsa ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.RNG - -{- | -Generates DSA key pair. Gives to a caller control over key length -and order of a subgroup 'q'. --} -foreign import capi safe "botan/ffi.h botan_privkey_create_dsa" - botan_privkey_create_dsa - :: Ptr BotanPrivKey -- ^ __key__: handler to the resulting key - -> BotanRNG -- ^ __rng__: initialized PRNG - -> CSize -- ^ __pbits__: length of the key in bits. Must be between in range (1024, 3072) - -- and multiple of 64. Bit size of the prime 'p' - -> CSize -- ^ __qbits__: qbits order of the subgroup. Must be in range (160, 256) and multiple - -- of 8 - -> IO CInt -- ^ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key - -- BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL - -- BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' - -- BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented - -foreign import capi safe "botan/ffi.h botan_privkey_load_dsa" - botan_privkey_load_dsa - :: Ptr BotanPrivKey -- ^ __key__ - -> BotanMP -- ^ __p__ - -> BotanMP -- ^ __q__ - -> BotanMP -- ^ __g__ - -> BotanMP -- ^ __x__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_load_dsa" - botan_pubkey_load_dsa - :: Ptr BotanPubKey -- ^ __key__ - -> BotanMP -- ^ __p__ - -> BotanMP -- ^ __q__ - -> BotanMP -- ^ __g__ - -> BotanMP -- ^ __y__ - -> IO CInt +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Decrypt.hs b/botan-bindings/src/Botan/Bindings/PubKey/Decrypt.hs new file mode 100644 index 00000000..441511fa --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/PubKey/Decrypt.hs @@ -0,0 +1,34 @@ +{-| +Module : Botan.Bindings.Decrypt +Description : Public Key Decryption +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.PubKey.Decrypt ( + Types.Botan_pk_op_decrypt_t (..) + , Types.Botan_pk_op_decrypt_struct + , Safe.botan_pk_op_decrypt_destroy + , botan_pk_op_decrypt_destroy_ptr + , Safe.botan_pk_op_decrypt_create + , Safe.botan_pk_op_decrypt_output_length + , botan_pk_op_decrypt + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_pk_op_decrypt_destroy_ptr :: FunPtr (Types.Botan_pk_op_decrypt_t -> IO CInt) +botan_pk_op_decrypt_destroy_ptr = FunPtr.botan_pk_op_decrypt_destroy + +botan_pk_op_decrypt :: Types.Botan_pk_op_decrypt_t -> Ptr Word8 -> Ptr CSize -> ConstPtr Word8 -> CSize -> IO CInt +botan_pk_op_decrypt = Safe.botan_pk_op_decrypt_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Decrypt.hsc b/botan-bindings/src/Botan/Bindings/PubKey/Decrypt.hsc deleted file mode 100644 index ce44bbe0..00000000 --- a/botan-bindings/src/Botan/Bindings/PubKey/Decrypt.hsc +++ /dev/null @@ -1,68 +0,0 @@ -{-| -Module : Botan.Bindings.Decrypt -Description : Public Key Decryption -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.PubKey.Decrypt ( - BotanPKOpDecryptStruct - , BotanPKOpDecrypt (..) - , botan_pk_op_decrypt_destroy - , pattern BOTAN_PUBKEY_DECRYPT_FLAGS_NONE - , botan_pk_op_decrypt_create - , botan_pk_op_decrypt_output_length - , botan_pk_op_decrypt - ) where - -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -#include - --- | Opaque decrypt struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_decrypt_struct" #-} BotanPKOpDecryptStruct - --- | Botan decrypt object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_decrypt_t" #-} BotanPKOpDecrypt - = MkBotanPKOpDecrypt { runBotanPKOpDecrypt :: Ptr BotanPKOpDecryptStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a decrypt object -foreign import capi safe "botan/ffi.h &botan_pk_op_decrypt_destroy" - botan_pk_op_decrypt_destroy - :: FinalizerPtr BotanPKOpDecryptStruct - -pattern BOTAN_PUBKEY_DECRYPT_FLAGS_NONE -- ^ Not actual flag - :: (Eq a, Num a) => a -pattern BOTAN_PUBKEY_DECRYPT_FLAGS_NONE = 0 - -foreign import capi safe "botan/ffi.h botan_pk_op_decrypt_create" - botan_pk_op_decrypt_create - :: Ptr BotanPKOpDecrypt -- ^ __op__ - -> BotanPrivKey -- ^ __key__ - -> Ptr CChar -- ^ __padding__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_decrypt_output_length" - botan_pk_op_decrypt_output_length - :: BotanPKOpDecrypt -- ^ __op__ - -> CSize -- ^ __ctext_len__ - -> Ptr CSize -- ^ __ptext_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_decrypt" - botan_pk_op_decrypt - :: BotanPKOpDecrypt -- ^ __op__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> ConstPtr Word8 -- ^ __ciphertext__ - -> CSize -- ^ __ciphertext_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/PubKey/ECDH.hs b/botan-bindings/src/Botan/Bindings/PubKey/ECDH.hs index 0877c43e..5a5b9698 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/ECDH.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/ECDH.hs @@ -9,28 +9,9 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.ECDH ( - botan_pubkey_load_ecdh - , botan_privkey_load_ecdh + Safe.botan_pubkey_load_ecdh + , Safe.botan_privkey_load_ecdh ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -foreign import capi safe "botan/ffi.h botan_pubkey_load_ecdh" - botan_pubkey_load_ecdh - :: Ptr BotanPubKey -- ^ __key__ - -> BotanMP -- ^ __public_x__ - -> BotanMP -- ^ __public_y__ - -> ConstPtr CChar -- ^ __curve_name__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_privkey_load_ecdh" - botan_privkey_load_ecdh - :: Ptr BotanPrivKey -- ^ __key__ - -> BotanMP -- ^ __scalar__ - -> ConstPtr CChar -- ^ __curve_name__ - -> IO CInt +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/PubKey/ECDSA.hs b/botan-bindings/src/Botan/Bindings/PubKey/ECDSA.hs index 4baade08..a46fbb2f 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/ECDSA.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/ECDSA.hs @@ -9,28 +9,9 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.ECDSA ( - botan_privkey_load_ecdsa - , botan_pubkey_load_ecdsa + Safe.botan_privkey_load_ecdsa + , Safe.botan_pubkey_load_ecdsa ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -foreign import capi safe "botan/ffi.h botan_privkey_load_ecdsa" - botan_privkey_load_ecdsa - :: Ptr BotanPrivKey -- ^ __key__ - -> BotanMP -- ^ __scalar__ - -> ConstPtr CChar -- ^ __curve_name__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_load_ecdsa" - botan_pubkey_load_ecdsa - :: Ptr BotanPubKey -- ^ __key__ - -> BotanMP -- ^ __public_x__ - -> BotanMP -- ^ __public_y__ - -> ConstPtr CChar -- ^ __curve_name__ - -> IO CInt +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Ed25519.hs b/botan-bindings/src/Botan/Bindings/PubKey/Ed25519.hs index 35852b26..2a38d22f 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/Ed25519.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/Ed25519.hs @@ -9,38 +9,22 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.Ed25519 ( botan_privkey_load_ed25519 , botan_pubkey_load_ed25519 - , botan_privkey_ed25519_get_privkey - , botan_pubkey_ed25519_get_pubkey + , Safe.botan_privkey_ed25519_get_privkey + , Safe.botan_pubkey_ed25519_get_pubkey ) where -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -foreign import capi safe "botan/ffi.h botan_privkey_load_ed25519" - botan_privkey_load_ed25519 - :: Ptr BotanPrivKey -- ^ __key__ - -> ConstPtr Word8 -- ^ __privkey[32]__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_load_ed25519" - botan_pubkey_load_ed25519 - :: Ptr BotanPubKey -- ^ __key__ - -> ConstPtr Word8 -- ^ __pubkey[32]__ - -> IO CInt +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt) +import Foreign.Ptr (Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) -foreign import capi safe "botan/ffi.h botan_privkey_ed25519_get_privkey" - botan_privkey_ed25519_get_privkey - :: BotanPrivKey -- ^ __key__ - -> Ptr Word8 -- ^ __output[64]__ - -> IO CInt +botan_privkey_load_ed25519 :: Ptr Types.Botan_privkey_t -> ConstPtr Word8 -> IO CInt +botan_privkey_load_ed25519 = Safe.botan_privkey_load_ed25519_wrapper -foreign import capi safe "botan/ffi.h botan_pubkey_ed25519_get_pubkey" - botan_pubkey_ed25519_get_pubkey - :: BotanPubKey -- ^ __key__ - -> Ptr Word8 -- ^ __pubkey[32]__ - -> IO CInt +botan_pubkey_load_ed25519 :: Ptr Types.Botan_pubkey_t -> ConstPtr Word8 -> IO CInt +botan_pubkey_load_ed25519 = Safe.botan_pubkey_load_ed25519_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/ElGamal.hs b/botan-bindings/src/Botan/Bindings/PubKey/ElGamal.hs index 8ffce5b1..cb369dd0 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/ElGamal.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/ElGamal.hs @@ -9,53 +9,10 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.ElGamal ( - botan_privkey_create_elgamal - , botan_pubkey_load_elgamal - , botan_privkey_load_elgamal + Safe.botan_privkey_create_elgamal + , Safe.botan_pubkey_load_elgamal + , Safe.botan_privkey_load_elgamal ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.RNG - -{- | -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 --} -foreign import capi safe "botan/ffi.h botan_privkey_create_elgamal" - botan_privkey_create_elgamal - :: Ptr BotanPrivKey -- ^ __key__: handler to the resulting key - -> BotanRNG -- ^ __rng__: initialized PRNG - -> CSize -- ^ __pbits__: length of the key in bits. Must be at least 1024 - -> CSize -- ^ __qbits__: order of the subgroup. Must be at least 160 - -> IO CInt -- ^ - BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key - -- - BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL - -- - BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' - -- - BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented - --- | Loads ElGamal private key -foreign import capi safe "botan/ffi.h botan_pubkey_load_elgamal" - botan_pubkey_load_elgamal - :: Ptr BotanPubKey -- ^ __key__: variable populated with key material - -> BotanMP -- ^ __p__: prime order of a Z_p group - -> BotanMP -- ^ __g__: group generator - -> BotanMP -- ^ __y__: private key - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Loads ElGamal public key -foreign import capi safe "botan/ffi.h botan_privkey_load_elgamal" - botan_privkey_load_elgamal - :: Ptr BotanPrivKey -- ^ __key__: variable populated with key material - -> BotanMP -- ^ __p__: prime order of a Z_p group - -> BotanMP -- ^ __g__: group generator - -> BotanMP -- ^ __x__: public key - -> IO CInt -- ^ 0 on success, a negative value on failure +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Encrypt.hs b/botan-bindings/src/Botan/Bindings/PubKey/Encrypt.hs new file mode 100644 index 00000000..ee6e5d41 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/PubKey/Encrypt.hs @@ -0,0 +1,34 @@ +{-| +Module : Botan.Bindings.Encrypt +Description : Public Key Encryption +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.PubKey.Encrypt ( + Types.Botan_pk_op_encrypt_t (..) + , Types.Botan_pk_op_encrypt_struct + , Safe.botan_pk_op_encrypt_destroy + , botan_pk_op_encrypt_destroy_ptr + , Safe.botan_pk_op_encrypt_create + , Safe.botan_pk_op_encrypt_output_length + , botan_pk_op_encrypt + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_pk_op_encrypt_destroy_ptr :: FunPtr (Types.Botan_pk_op_encrypt_t -> IO CInt) +botan_pk_op_encrypt_destroy_ptr = FunPtr.botan_pk_op_encrypt_destroy + +botan_pk_op_encrypt :: Types.Botan_pk_op_encrypt_t -> Types.Botan_rng_t -> Ptr Word8 -> Ptr CSize -> ConstPtr Word8 -> CSize -> IO CInt +botan_pk_op_encrypt = Safe.botan_pk_op_encrypt_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Encrypt.hsc b/botan-bindings/src/Botan/Bindings/PubKey/Encrypt.hsc deleted file mode 100644 index dfe85fba..00000000 --- a/botan-bindings/src/Botan/Bindings/PubKey/Encrypt.hsc +++ /dev/null @@ -1,70 +0,0 @@ -{-| -Module : Botan.Bindings.Encrypt -Description : Public Key Encryption -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.PubKey.Encrypt ( - BotanPKOpEncryptStruct - , BotanPKOpEncrypt (..) - , botan_pk_op_encrypt_destroy - , pattern BOTAN_PUBKEY_ENCRYPT_FLAGS_NONE - , botan_pk_op_encrypt_create - , botan_pk_op_encrypt_output_length - , botan_pk_op_encrypt - ) where - -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.RNG - -#include - --- | Opaque encrypt struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_encrypt_struct" #-} BotanPKOpEncryptStruct - --- | Botan encrypt object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_encrypt_t" #-} BotanPKOpEncrypt - = MkBotanPKOpEncrypt { runBotanPKOpEncrypt :: Ptr BotanPKOpEncryptStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a encrypt object -foreign import capi safe "botan/ffi.h &botan_pk_op_encrypt_destroy" - botan_pk_op_encrypt_destroy - :: FinalizerPtr BotanPKOpEncryptStruct - -pattern BOTAN_PUBKEY_ENCRYPT_FLAGS_NONE -- ^ Not actual flag - :: (Eq a, Num a) => a -pattern BOTAN_PUBKEY_ENCRYPT_FLAGS_NONE = 0 - -foreign import capi safe "botan/ffi.h botan_pk_op_encrypt_create" - botan_pk_op_encrypt_create - :: Ptr BotanPKOpEncrypt -- ^ __op__ - -> BotanPubKey -- ^ __key__ - -> ConstPtr CChar -- ^ __padding__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_encrypt_output_length" - botan_pk_op_encrypt_output_length - :: BotanPKOpEncrypt -- ^ __op__ - -> CSize -- ^ __ptext_len__ - -> Ptr CSize -- ^ __ctext_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_encrypt" - botan_pk_op_encrypt - :: BotanPKOpEncrypt -- ^ __op__ - -> BotanRNG -- ^ __rng__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> Ptr Word8 -- ^ __plaintext[]__ - -> CSize -- ^ __plaintext_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/PubKey/KeyAgreement.hs b/botan-bindings/src/Botan/Bindings/PubKey/KeyAgreement.hs new file mode 100644 index 00000000..a803fb20 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/PubKey/KeyAgreement.hs @@ -0,0 +1,36 @@ +{-| +Module : Botan.Bindings.KeyAgreement +Description : Key Agreement +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.PubKey.KeyAgreement ( + Types.Botan_pk_op_ka_t (..) + , Types.Botan_pk_op_ka_struct + , Safe.botan_pk_op_key_agreement_destroy + , botan_pk_op_key_agreement_destroy_ptr + , Safe.botan_pk_op_key_agreement_create + , Safe.botan_pk_op_key_agreement_export_public + , Safe.botan_pk_op_key_agreement_view_public + , Safe.botan_pk_op_key_agreement_size + , botan_pk_op_key_agreement + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_pk_op_key_agreement_destroy_ptr :: FunPtr (Types.Botan_pk_op_ka_t -> IO CInt) +botan_pk_op_key_agreement_destroy_ptr = FunPtr.botan_pk_op_key_agreement_destroy + +botan_pk_op_key_agreement :: Types.Botan_pk_op_ka_t -> Ptr Word8 -> Ptr CSize -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> IO CInt +botan_pk_op_key_agreement = Safe.botan_pk_op_key_agreement_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/KeyAgreement.hsc b/botan-bindings/src/Botan/Bindings/PubKey/KeyAgreement.hsc deleted file mode 100644 index 85d20822..00000000 --- a/botan-bindings/src/Botan/Bindings/PubKey/KeyAgreement.hsc +++ /dev/null @@ -1,88 +0,0 @@ -{-| -Module : Botan.Bindings.KeyAgreement -Description : Key Agreement -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.PubKey.KeyAgreement ( - BotanPKOpKeyAgreementStruct - , BotanPKOpKeyAgreement (..) - , botan_pk_op_key_agreement_destroy - , pattern BOTAN_PUBKEY_KEY_AGREEMENT_FLAGS_NONE - , botan_pk_op_key_agreement_create - , botan_pk_op_key_agreement_export_public - , botan_pk_op_key_agreement_view_public - , botan_pk_op_key_agreement_size - , botan_pk_op_key_agreement - ) where - -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.View - -#include - --- NOTE: Asymmetry in naming of struct vs functions - --- | Opaque key agreement struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_ka_struct" #-} BotanPKOpKeyAgreementStruct - --- | Botan key agreement object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_ka_t" #-} BotanPKOpKeyAgreement - = MkBotanPKOpKeyAgreement { runBotanPKOpKeyAgreement :: Ptr BotanPKOpKeyAgreementStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a key agreement object -foreign import capi safe "botan/ffi.h &botan_pk_op_key_agreement_destroy" - botan_pk_op_key_agreement_destroy - :: FinalizerPtr BotanPKOpKeyAgreementStruct - -pattern BOTAN_PUBKEY_KEY_AGREEMENT_FLAGS_NONE -- ^ Not actual flag - :: (Eq a, Num a) => a -pattern BOTAN_PUBKEY_KEY_AGREEMENT_FLAGS_NONE = 0 - -foreign import capi safe "botan/ffi.h botan_pk_op_key_agreement_create" - botan_pk_op_key_agreement_create - :: Ptr BotanPKOpKeyAgreement -- ^ __op__ - -> BotanPrivKey -- ^ __key__ - -> ConstPtr CChar -- ^ __kdf__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_key_agreement_export_public" - botan_pk_op_key_agreement_export_public - :: BotanPrivKey -- ^ __key__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_key_agreement_view_public" - botan_pk_op_key_agreement_view_public - :: BotanPrivKey -- ^ __key__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_key_agreement_size" - botan_pk_op_key_agreement_size - :: BotanPKOpKeyAgreement -- ^ __op__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_key_agreement" - botan_pk_op_key_agreement - :: BotanPKOpKeyAgreement -- ^ __op__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__, - -> ConstPtr Word8 -- ^ __other_key[]__ - -> CSize -- ^ __other_key_len__ - -> ConstPtr Word8 -- ^ __salt[]__ - -> CSize -- ^ __salt_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/PubKey/KeyEncapsulation.hs b/botan-bindings/src/Botan/Bindings/PubKey/KeyEncapsulation.hs index 57bdbbbe..7f3bf745 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/KeyEncapsulation.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/KeyEncapsulation.hs @@ -9,109 +9,40 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.KeyEncapsulation ( - BotanPKOpKEMEncryptStruct - , BotanPKOpKEMEncrypt (..) - , botan_pk_op_kem_encrypt_destroy - , botan_pk_op_kem_encrypt_create - , botan_pk_op_kem_encrypt_shared_key_length - , botan_pk_op_kem_encrypt_encapsulated_key_length + Types.Botan_pk_op_kem_encrypt_t (..) + , Types.Botan_pk_op_kem_encrypt_struct + , Safe.botan_pk_op_kem_encrypt_destroy + , botan_pk_op_kem_encrypt_destroy_ptr + , Safe.botan_pk_op_kem_encrypt_create + , Safe.botan_pk_op_kem_encrypt_shared_key_length + , Safe.botan_pk_op_kem_encrypt_encapsulated_key_length , botan_pk_op_kem_encrypt_create_shared_key - , BotanPKOpKEMDecryptStruct - , BotanPKOpKEMDecrypt (..) - , botan_pk_op_kem_decrypt_destroy - , botan_pk_op_kem_decrypt_create - , botan_pk_op_kem_decrypt_shared_key_length + , Types.Botan_pk_op_kem_decrypt_t (..) + , Types.Botan_pk_op_kem_decrypt_struct + , Safe.botan_pk_op_kem_decrypt_destroy + , botan_pk_op_kem_decrypt_destroy_ptr + , Safe.botan_pk_op_kem_decrypt_create + , Safe.botan_pk_op_kem_decrypt_shared_key_length , botan_pk_op_kem_decrypt_shared_key ) where -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.RNG - --- | Opaque KEM encrypt struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_kem_encrypt_struct" #-} BotanPKOpKEMEncryptStruct - --- | Botan KEM encrypt object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_kem_encrypt_t" #-} BotanPKOpKEMEncrypt - = MkBotanPKOpKEMEncrypt { runBotanPKOpKEMEncrypt :: Ptr BotanPKOpKEMEncryptStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a KEM encrypt object -foreign import capi safe "botan/ffi.h &botan_pk_op_kem_encrypt_destroy" - botan_pk_op_kem_encrypt_destroy - :: FinalizerPtr BotanPKOpKEMEncryptStruct - -foreign import capi safe "botan/ffi.h botan_pk_op_kem_encrypt_create" - botan_pk_op_kem_encrypt_create - :: Ptr BotanPKOpKEMEncrypt -- ^ __op__ - -> BotanPubKey -- ^ __key__ - -> ConstPtr CChar -- ^ __kdf__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_kem_encrypt_shared_key_length" - botan_pk_op_kem_encrypt_shared_key_length - :: BotanPKOpKEMEncrypt -- ^ __op__ - -> CSize -- ^ __desired_shared_key_length__ - -> Ptr CSize -- ^ __output_shared_key_length__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_kem_encrypt_encapsulated_key_length" - botan_pk_op_kem_encrypt_encapsulated_key_length - :: BotanPKOpKEMEncrypt -- ^ __op__ - -> Ptr CSize -- ^ __output_encapsulated_key_length__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_kem_encrypt_create_shared_key" - botan_pk_op_kem_encrypt_create_shared_key - :: BotanPKOpKEMEncrypt -- ^ __op__ - -> BotanRNG -- ^ __rng__ - -> ConstPtr Word8 -- ^ __salt[]__ - -> CSize -- ^ __salt_len__ - -> CSize -- ^ __desired_shared_key_len__ - -> Ptr Word8 -- ^ __shared_key[]__ - -> Ptr CSize -- ^ __shared_key_len__ - -> Ptr Word8 -- ^ __encapsulated_key[]__ - -> Ptr CSize -- ^ __encapsulated_key_len__ - -> IO CInt - --- | Opaque KEM decrypt struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_kem_decrypt_struct" #-} BotanPKOpKEMDecryptStruct - --- | Botan KEM decrypt object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_kem_decrypt_t" #-} BotanPKOpKEMDecrypt - = MkBotanPKOpKEMDecrypt { runBotanPKOpKEMDecrypt :: Ptr BotanPKOpKEMDecryptStruct } - deriving newtype (Eq, Ord, Storable) +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) --- | Destroy a KEM decrypt object -foreign import capi safe "botan/ffi.h &botan_pk_op_kem_decrypt_destroy" - botan_pk_op_kem_decrypt_destroy - :: FinalizerPtr BotanPKOpKEMDecryptStruct +botan_pk_op_kem_encrypt_destroy_ptr :: FunPtr (Types.Botan_pk_op_kem_encrypt_t -> IO CInt) +botan_pk_op_kem_encrypt_destroy_ptr = FunPtr.botan_pk_op_kem_encrypt_destroy -foreign import capi safe "botan/ffi.h botan_pk_op_kem_decrypt_create" - botan_pk_op_kem_decrypt_create - :: Ptr BotanPKOpKEMDecrypt -- ^ __op__ - -> BotanPrivKey -- ^ __key__ - -> ConstPtr CChar -- ^ __kdf__ - -> IO CInt +botan_pk_op_kem_decrypt_destroy_ptr :: FunPtr (Types.Botan_pk_op_kem_decrypt_t -> IO CInt) +botan_pk_op_kem_decrypt_destroy_ptr = FunPtr.botan_pk_op_kem_decrypt_destroy -foreign import capi safe "botan/ffi.h botan_pk_op_kem_decrypt_shared_key_length" - botan_pk_op_kem_decrypt_shared_key_length - :: BotanPKOpKEMDecrypt -- ^ __op__ - -> CSize -- ^ __desired_shared_key_length__ - -> Ptr CSize -- ^ __output_shared_key_length__ - -> IO CInt +botan_pk_op_kem_encrypt_create_shared_key :: Types.Botan_pk_op_kem_encrypt_t -> Types.Botan_rng_t -> ConstPtr Word8 -> CSize -> CSize -> Ptr Word8 -> Ptr CSize -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_pk_op_kem_encrypt_create_shared_key = Safe.botan_pk_op_kem_encrypt_create_shared_key_wrapper -foreign import capi safe "botan/ffi.h botan_pk_op_kem_decrypt_shared_key" - botan_pk_op_kem_decrypt_shared_key - :: BotanPKOpKEMDecrypt -- ^ __op__ - -> ConstPtr Word8 -- ^ __salt[]__ - -> CSize -- ^ __salt_len__ - -> ConstPtr Word8 -- ^ __encapsulated_key[]__ - -> CSize -- ^ __encapsulated_key_len__ - -> CSize -- ^ __desired_shared_key_len__ - -> Ptr Word8 -- ^ __shared_key[]__ - -> Ptr CSize -- ^ __shared_key_len__ - -> IO CInt +botan_pk_op_kem_decrypt_shared_key :: Types.Botan_pk_op_kem_decrypt_t -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> CSize -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_pk_op_kem_decrypt_shared_key = Safe.botan_pk_op_kem_decrypt_shared_key_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/RSA.hs b/botan-bindings/src/Botan/Bindings/PubKey/RSA.hs index 2d4789f2..5a82fabb 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/RSA.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/RSA.hs @@ -9,45 +9,19 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.RSA ( - botan_privkey_load_rsa + Safe.botan_privkey_load_rsa , botan_privkey_load_rsa_pkcs1 - , botan_privkey_rsa_get_privkey - , botan_pubkey_load_rsa + , Safe.botan_privkey_rsa_get_privkey + , Safe.botan_pubkey_load_rsa ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -foreign import capi safe "botan/ffi.h botan_privkey_load_rsa" - botan_privkey_load_rsa - :: Ptr BotanPrivKey -- ^ __key__ - -> BotanMP -- ^ __p__ - -> BotanMP -- ^ __q__ - -> BotanMP -- ^ __e__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_privkey_load_rsa_pkcs1" - botan_privkey_load_rsa_pkcs1 - :: Ptr BotanPrivKey -- ^ __key__ - -> ConstPtr Word8 -- ^ __bits[]__ - -> CSize -- ^ __len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_privkey_rsa_get_privkey" - botan_privkey_rsa_get_privkey - :: BotanPrivKey -- ^ __rsa_key__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> Word32 -- ^ __flags__ - -> IO CInt +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) -foreign import capi safe "botan/ffi.h botan_pubkey_load_rsa" - botan_pubkey_load_rsa - :: Ptr BotanPubKey -- ^ __key__ - -> BotanMP -- ^ __n__ - -> BotanMP -- ^ __e__ - -> IO CInt +botan_privkey_load_rsa_pkcs1 :: Ptr Types.Botan_privkey_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_privkey_load_rsa_pkcs1 = Safe.botan_privkey_load_rsa_pkcs1_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/SM2.hs b/botan-bindings/src/Botan/Bindings/PubKey/SM2.hs index 32a2c545..e5348886 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/SM2.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/SM2.hs @@ -9,39 +9,10 @@ Stability : experimental Portability : POSIX -} - -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.SM2 ( - botan_pubkey_load_sm2 - , botan_privkey_load_sm2 - , botan_pubkey_sm2_compute_za + Safe.botan_pubkey_load_sm2 + , Safe.botan_privkey_load_sm2 + , Safe.botan_pubkey_sm2_compute_za ) where -import Botan.Bindings.MPI -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -foreign import capi safe "botan/ffi.h botan_pubkey_load_sm2" - botan_pubkey_load_sm2 - :: Ptr BotanPubKey -- ^ __key__ - -> BotanMP -- ^ __public_x__ - -> BotanMP -- ^ __public_y__ - -> ConstPtr CChar -- ^ __curve_name__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_privkey_load_sm2" - botan_privkey_load_sm2 - :: Ptr BotanPrivKey -- ^ __key__ - -> BotanMP -- ^ __scalar__ - -> ConstPtr CChar -- ^ __curve_name__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_sm2_compute_za" - botan_pubkey_sm2_compute_za - :: Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> ConstPtr CChar -- ^ __ident__ - -> ConstPtr CChar -- ^ __hash_algo__ - -> BotanPubKey -- ^ __key__ - -> IO CInt +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Sign.hs b/botan-bindings/src/Botan/Bindings/PubKey/Sign.hs new file mode 100644 index 00000000..467e72c3 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/PubKey/Sign.hs @@ -0,0 +1,36 @@ +{-| +Module : Botan.Bindings.Sign +Description : Signature Generation +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.PubKey.Sign ( + Types.Botan_pk_op_sign_t (..) + , Types.Botan_pk_op_sign_struct + , Safe.botan_pk_op_sign_destroy + , botan_pk_op_sign_destroy_ptr + , Safe.botan_pk_op_sign_create + , Safe.botan_pk_op_sign_output_length + , botan_pk_op_sign_update + , Safe.botan_pk_op_sign_finish + , Types.bOTAN_PUBKEY_DER_FORMAT_SIGNATURE + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_pk_op_sign_destroy_ptr :: FunPtr (Types.Botan_pk_op_sign_t -> IO CInt) +botan_pk_op_sign_destroy_ptr = FunPtr.botan_pk_op_sign_destroy + +botan_pk_op_sign_update :: Types.Botan_pk_op_sign_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_pk_op_sign_update = Safe.botan_pk_op_sign_update_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Sign.hsc b/botan-bindings/src/Botan/Bindings/PubKey/Sign.hsc deleted file mode 100644 index 7e11105e..00000000 --- a/botan-bindings/src/Botan/Bindings/PubKey/Sign.hsc +++ /dev/null @@ -1,81 +0,0 @@ -{-| -Module : Botan.Bindings.Sign -Description : Signature Generation -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.PubKey.Sign ( - BotanPKOpSignStruct - , BotanPKOpSign (..) - , botan_pk_op_sign_destroy - , pattern BOTAN_PUBKEY_STD_FORMAT_SIGNATURE - , pattern BOTAN_PUBKEY_DER_FORMAT_SIGNATURE - , botan_pk_op_sign_create - , botan_pk_op_sign_output_length - , botan_pk_op_sign_update - , botan_pk_op_sign_finish - ) where - -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.RNG - -#include - --- | Opaque sign struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_sign_struct" #-} BotanPKOpSignStruct - --- | Botan sign object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_sign_t" #-} BotanPKOpSign - = MkBotanPKOpSign { runBotanPKOpSign :: Ptr BotanPKOpSignStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a sign object -foreign import capi safe "botan/ffi.h &botan_pk_op_sign_destroy" - botan_pk_op_sign_destroy - :: FinalizerPtr BotanPKOpSignStruct - --- NOTE: These are separate flags from BOTAN_PRIVKEY_EXPORT_FLAG_DER and BOTAN_PRIVKEY_EXPORT_FLAG_PEM --- The correct default flag would be BOTAN_PUBKEY_STD_FORMAT_SIGNATURE, and is not necessarily --- indicative of PEM encoding -pattern BOTAN_PUBKEY_STD_FORMAT_SIGNATURE -- ^ Not an actual flag - , BOTAN_PUBKEY_DER_FORMAT_SIGNATURE - :: (Eq a, Num a) => a -pattern BOTAN_PUBKEY_STD_FORMAT_SIGNATURE = 0 -pattern BOTAN_PUBKEY_DER_FORMAT_SIGNATURE = #const BOTAN_PUBKEY_DER_FORMAT_SIGNATURE - -foreign import capi safe "botan/ffi.h botan_pk_op_sign_create" - botan_pk_op_sign_create - :: Ptr BotanPKOpSign -- ^ __op__ - -> BotanPrivKey -- ^ __key__ - -> ConstPtr CChar -- ^ __hash_and_padding__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_sign_output_length" - botan_pk_op_sign_output_length - :: BotanPKOpSign -- ^ __op__ - -> Ptr CSize -- ^ __olen__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_sign_update" - botan_pk_op_sign_update - :: BotanPKOpSign -- ^ __op__ - -> ConstPtr Word8 -- ^ __in[]__ - -> CSize -- ^ __in_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_sign_finish" - botan_pk_op_sign_finish - :: BotanPKOpSign -- ^ __op__ - -> BotanRNG -- ^ __rng__ - -> Ptr Word8 -- ^ __sig[]__ - -> Ptr CSize -- ^ __sig_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Verify.hs b/botan-bindings/src/Botan/Bindings/PubKey/Verify.hs new file mode 100644 index 00000000..633fbdd2 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/PubKey/Verify.hs @@ -0,0 +1,38 @@ +{-| +Module : Botan.Bindings.Verify +Description : Signature Verification +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.PubKey.Verify ( + Types.Botan_pk_op_verify_t (..) + , Types.Botan_pk_op_verify_struct + , Safe.botan_pk_op_verify_destroy + , botan_pk_op_verify_destroy_ptr + , Safe.botan_pk_op_verify_create + , botan_pk_op_verify_update + , botan_pk_op_verify_finish + , Types.bOTAN_PUBKEY_DER_FORMAT_SIGNATURE + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_pk_op_verify_destroy_ptr :: FunPtr (Types.Botan_pk_op_verify_t -> IO CInt) +botan_pk_op_verify_destroy_ptr = FunPtr.botan_pk_op_verify_destroy + +botan_pk_op_verify_update :: Types.Botan_pk_op_verify_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_pk_op_verify_update = Safe.botan_pk_op_verify_update_wrapper + +botan_pk_op_verify_finish :: Types.Botan_pk_op_verify_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_pk_op_verify_finish = Safe.botan_pk_op_verify_finish_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PubKey/Verify.hsc b/botan-bindings/src/Botan/Bindings/PubKey/Verify.hsc deleted file mode 100644 index 2e97c46e..00000000 --- a/botan-bindings/src/Botan/Bindings/PubKey/Verify.hsc +++ /dev/null @@ -1,63 +0,0 @@ -{-| -Module : Botan.Bindings.Verify -Description : Signature Verification -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.PubKey.Verify ( - BotanPKOpVerifyStruct - , BotanPKOpVerify (..) - , botan_pk_op_verify_destroy - , botan_pk_op_verify_create - , botan_pk_op_verify_update - , botan_pk_op_verify_finish - , pattern BOTAN_PUBKEY_STD_FORMAT_SIGNATURE - , pattern BOTAN_PUBKEY_DER_FORMAT_SIGNATURE - ) where - -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.PubKey.Sign - --- | Opaque verify struct -data {-# CTYPE "botan/ffi.h" "struct botan_pk_op_verify_struct" #-} BotanPKOpVerifyStruct - --- | Botan verify object -newtype {-# CTYPE "botan/ffi.h" "botan_pk_op_verify_t" #-} BotanPKOpVerify - = MkBotanPKOpVerify { runBotanPKOpVerify :: Ptr BotanPKOpVerifyStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a verify object -foreign import capi safe "botan/ffi.h &botan_pk_op_verify_destroy" - botan_pk_op_verify_destroy - :: FinalizerPtr BotanPKOpVerifyStruct - --- | Uses the same flags as botan_pk_op_sign_create -foreign import capi safe "botan/ffi.h botan_pk_op_verify_create" - botan_pk_op_verify_create - :: Ptr BotanPKOpVerify -- ^ __op__ - -> BotanPubKey -- ^ __key__ - -> ConstPtr CChar -- ^ __hash_and_padding__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_verify_update" - botan_pk_op_verify_update - :: BotanPKOpVerify -- ^ __op__ - -> ConstPtr Word8 -- ^ __in[]__ - -> CSize -- ^ __in_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pk_op_verify_finish" - botan_pk_op_verify_finish - :: BotanPKOpVerify -- ^ __op__ - -> ConstPtr Word8 -- ^ __sig[]__ - -> CSize -- ^ __sig_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/PubKey/X25519.hs b/botan-bindings/src/Botan/Bindings/PubKey/X25519.hs index 7806d61e..d30fb921 100644 --- a/botan-bindings/src/Botan/Bindings/PubKey/X25519.hs +++ b/botan-bindings/src/Botan/Bindings/PubKey/X25519.hs @@ -9,38 +9,22 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.PubKey.X25519 ( botan_privkey_load_x25519 , botan_pubkey_load_x25519 - , botan_privkey_x25519_get_privkey - , botan_pubkey_x25519_get_pubkey + , Safe.botan_privkey_x25519_get_privkey + , Safe.botan_pubkey_x25519_get_pubkey ) where -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey - -foreign import capi safe "botan/ffi.h botan_privkey_load_x25519" - botan_privkey_load_x25519 - :: Ptr BotanPrivKey -- ^ __key__ - -> ConstPtr Word8 -- ^ __privkey[32]__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_pubkey_load_x25519" - botan_pubkey_load_x25519 - :: Ptr BotanPubKey -- ^ __key__ - -> ConstPtr Word8 -- ^ __pubkey[32]__ - -> IO CInt +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt) +import Foreign.Ptr (Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) -foreign import capi safe "botan/ffi.h botan_privkey_x25519_get_privkey" - botan_privkey_x25519_get_privkey - :: BotanPrivKey -- ^ __key__ - -> Ptr Word8 -- ^ __output[32]__ - -> IO CInt +botan_privkey_load_x25519 :: Ptr Types.Botan_privkey_t -> ConstPtr Word8 -> IO CInt +botan_privkey_load_x25519 = Safe.botan_privkey_load_x25519_wrapper -foreign import capi safe "botan/ffi.h botan_pubkey_x25519_get_pubkey" - botan_pubkey_x25519_get_pubkey - :: BotanPubKey -- ^ __key__ - -> Ptr Word8 -- ^ __pubkey[32]__ - -> IO CInt +botan_pubkey_load_x25519 :: Ptr Types.Botan_pubkey_t -> ConstPtr Word8 -> IO CInt +botan_pubkey_load_x25519 = Safe.botan_pubkey_load_x25519_wrapper diff --git a/botan-bindings/src/Botan/Bindings/PwdHash.hs b/botan-bindings/src/Botan/Bindings/PwdHash.hs index 69c25c06..c224ebc9 100644 --- a/botan-bindings/src/Botan/Bindings/PwdHash.hs +++ b/botan-bindings/src/Botan/Bindings/PwdHash.hs @@ -13,9 +13,11 @@ Deriviation](https://botan.randombit.net/handbook/api_ref/pbkdf.html) section of the C++ API reference. -} -{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE OverloadedStrings #-} module Botan.Bindings.PwdHash ( + -- $password-hashing botan_pwdhash , botan_pwdhash_timed -- * Available schemes @@ -29,71 +31,48 @@ module Botan.Bindings.PwdHash ( , pattern BOTAN_PBKDF_OPENPGP_S2K ) where -import Botan.Bindings.Prelude +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Data.Word (Word32, Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) {------------------------------------------------------------------------------- Password hashing -------------------------------------------------------------------------------} --- | Derive a cryptographic key from a passphrase using algorithm-specific parameters --- --- NOTE: the interpretation of parameters @param1@, @param2@, and @param3@ are --- different depending on the PBKDF algorithm that is picked. See the --- documentation of the --- [@from_params@](https://botan.randombit.net/handbook/api_ref/pbkdf.html#passwordhash) --- C++ function for more information about the meaning of the parameters. --- -foreign import capi safe "botan/ffi.h botan_pwdhash" - botan_pwdhash - :: ConstPtr CChar -- ^ __algo__: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" or "Scrypt" - -> CSize -- ^ __param1__: the first PBKDF algorithm parameter - -> CSize -- ^ __param2__: the second PBKDF algorithm parameter (may be zero if unneeded) - -> CSize -- ^ __param3__: the third PBKDF algorithm parameter (may be zero if unneeded) - -> Ptr Word8 -- ^ __out[]__: buffer to store the derived key, must be of out_len bytes - -> CSize -- ^ __out_len__: the desired length of the key to produce - -> ConstPtr CChar -- ^ __passphrase__: the password to derive the key from - -> CSize -- ^ __passphrase_len__: if > 0, specifies length of password. If len == 0, then - -- strlen will be called on passphrase to compute the length. - -> ConstPtr Word8 -- ^ __salt[]__: a randomly chosen salt - -> CSize -- ^ __salt_len__: length of salt in bytes - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Derive a cryptographic key from a passphrase using algorithm-specific --- parameters that are tuned automatically for a desired running time of the --- algorithm. --- --- NOTE: for the @Argon2@ and @Scrypt@ PBKDF algorithms, 'botan_pwdhash_timed' --- returns parameters in a different order than the order in which they should --- be passed to 'botan_pwdhash'. This is a known issue with the Botan C++ --- library. See for more --- information. --- --- 'botan_pwdhash_timed' always returns parameters in this order: --- --- > (iterations, parallelism, memoryParam) --- --- 'botan_pwdhash' shoulds be given parameters in this order for the --- @Argon2@ and @Scrypt@ algorithms: --- --- > param1 = memoryParam --- > param2 = iterations --- > param3 = parallelism --- -foreign import capi safe "botan/ffi.h botan_pwdhash_timed" - botan_pwdhash_timed - :: ConstPtr CChar -- ^ __algo__: PBKDF algorithm, e.g., "Scrypt" or "PBKDF2(SHA-256)" - -> Word32 -- ^ __msec__: the desired runtime in milliseconds - -> Ptr CSize -- ^ __param1__: will be set to the first PBKDF algorithm parameter - -> Ptr CSize -- ^ __param2__: will be set to the second PBKDF algorithm parameter (may be zero if unneeded) - -> Ptr CSize -- ^ __param3__: will be set to the third PBKDF algorithm parameter (may be zero if unneeded) - -> Ptr Word8 -- ^ __out[]__: buffer to store the derived key, must be of out_len bytes - -> CSize -- ^ __out_len__: the desired length of the key to produce - -> ConstPtr CChar -- ^ __passphrase__: the password to derive the key from - -> CSize -- ^ __passphrase_len__: if > 0, specifies length of password. If len == 0, then - -- strlen will be called on passphrase to compute the length. - -> ConstPtr Word8 -- ^ __salt[]__: a randomly chosen salt - -> CSize -- ^ __salt_len__: length of salt in bytes - -> IO CInt -- ^ 0 on success, a negative value on failure +{- $password-hashing + +For 'Safe.botan_pwdhash' the interpretation of parameters @param1@, +@param2@, and @param3@ are different depending on the PBKDF algorithm that is +picked. See the documentation of the +[@from_params@](https://botan.randombit.net/handbook/api_ref/pbkdf.html#passwordhash) +C++ function for more information about the meaning of the parameters. + +For the @Argon2@ and @Scrypt@ PBKDF algorithms, 'Safe.botan_pwdhash_timed' +returns parameters in a different order than the order in which they should +be passed to 'Safe.botan_pwdhash'. This is a known issue with the Botan C++ +library. See for more +information. + +'Safe.botan_pwdhash_timed' always returns parameters in this order: + +> (iterations, parallelism, memoryParam) + +'Safe.botan_pwdhash' should be given parameters in this order for the +@Argon2@ and @Scrypt@ algorithms: + +> param1 = memoryParam +> param2 = iterations +> param3 = parallelism +-} + +botan_pwdhash :: ConstPtr CChar -> CSize -> CSize -> CSize -> Ptr Word8 -> CSize -> ConstPtr CChar -> CSize -> ConstPtr Word8 -> CSize -> IO CInt +botan_pwdhash = Safe.botan_pwdhash_wrapper + +botan_pwdhash_timed :: ConstPtr CChar -> Word32 -> Ptr CSize -> Ptr CSize -> Ptr CSize -> Ptr Word8 -> CSize -> ConstPtr CChar -> CSize -> ConstPtr Word8 -> CSize -> IO CInt +botan_pwdhash_timed = Safe.botan_pwdhash_timed_wrapper {------------------------------------------------------------------------------- Available schemes diff --git a/botan-bindings/src/Botan/Bindings/RNG.hs b/botan-bindings/src/Botan/Bindings/RNG.hs index 01d52db9..9d3735d3 100644 --- a/botan-bindings/src/Botan/Bindings/RNG.hs +++ b/botan-bindings/src/Botan/Bindings/RNG.hs @@ -9,48 +9,36 @@ Stability : experimental Portability : POSIX -} -{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE OverloadedStrings #-} module Botan.Bindings.RNG ( - BotanRNGStruct - , BotanRNG (..) - , botan_rng_destroy + Types.Botan_rng_t (..) + , Types.Botan_rng_struct + , Safe.botan_rng_destroy + , botan_rng_destroy_ptr + , Safe.botan_rng_init + , Safe.botan_rng_init_custom + , Safe.botan_rng_get + , Safe.botan_system_rng_get + , Safe.botan_rng_reseed + , Safe.botan_rng_reseed_from_rng + , Safe.botan_rng_add_entropy , pattern BOTAN_RNG_TYPE_SYSTEM , pattern BOTAN_RNG_TYPE_USER , pattern BOTAN_RNG_TYPE_USER_THREADSAFE , pattern BOTAN_RNG_TYPE_RDRAND - , botan_rng_init - , BotanRNGGetCallback - , mallocBotanRNGGetCallbackFunPtr - , BotanRNGAddEntropyCallback - , mallocBotanRNGAddEntropyCallbackFunPtr - , BotanRNGDestroyCallback - , mallocBotanRNGDestroyCallbackFunPtr - , botan_rng_init_custom - , botan_rng_get - , botan_system_rng_get - , botan_rng_reseed - , botan_rng_reseed_from_rng - , botan_rng_add_entropy ) where -import Botan.Bindings.Prelude +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.String (IsString) +import Foreign.C.Types (CInt) +import Foreign.Ptr (FunPtr) --- | Opaque RNG struct -data {-# CTYPE "botan/ffi.h" "struct botan_rng_struct" #-} BotanRNGStruct +botan_rng_destroy_ptr :: FunPtr (Types.Botan_rng_t -> IO CInt) +botan_rng_destroy_ptr = FunPtr.botan_rng_destroy --- | Botan RNG object -newtype {-# CTYPE "botan/ffi.h" "botan_rng_t" #-} BotanRNG - = MkBotanRNG { runBotanRNG :: Ptr BotanRNGStruct } - deriving newtype (Eq, Ord, Storable) - --- | Frees all resources of the random number generator object -foreign import capi safe "botan/ffi.h &botan_rng_destroy" - botan_rng_destroy - :: FinalizerPtr BotanRNGStruct - --- WARNING: Not real botan constants, values are taken from documentation / source code. --- TODO: Maybe move to Botan.Low.RNG pattern BOTAN_RNG_TYPE_SYSTEM -- ^ system RNG , BOTAN_RNG_TYPE_USER -- ^ userspace RNG , BOTAN_RNG_TYPE_USER_THREADSAFE -- ^ userspace RNG, with internal locking @@ -60,114 +48,3 @@ pattern BOTAN_RNG_TYPE_SYSTEM = "system" pattern BOTAN_RNG_TYPE_USER = "user" pattern BOTAN_RNG_TYPE_USER_THREADSAFE = "user-threadsafe" pattern BOTAN_RNG_TYPE_RDRAND = "rdrand" - -{- | -Initialize a random number generator object - -rng_type has the 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. --} -foreign import capi safe "botan/ffi.h botan_rng_init" - botan_rng_init - :: Ptr BotanRNG -- ^ __rng__ - -> ConstPtr CChar -- ^ __rng_type__: type of the rng - -> IO CInt -- ^ 0 if success, else error code - --- | Callback for getting random bytes from the rng, return 0 for success -type BotanRNGGetCallback ctx - = Ptr ctx -- ^ __context__ - -> Ptr Word8 -- ^ __out__ - -> CSize -- ^ __out_len__ - -> IO CInt - --- NOTE: "Wrapper stubs can't be used with CApiFFI." -foreign import ccall "wrapper" - mallocBotanRNGGetCallbackFunPtr - :: BotanRNGGetCallback ctx - -> IO (FunPtr (BotanRNGGetCallback ctx)) - --- | Callback for adding entropy to the rng, return 0 for success -type BotanRNGAddEntropyCallback ctx - = Ptr ctx -- ^ __context__ - -> ConstPtr Word8 -- ^ __input[]__ - -> CSize -- ^ __length__ - -> IO CInt - --- NOTE: "Wrapper stubs can't be used with CApiFFI." -foreign import ccall "wrapper" - mallocBotanRNGAddEntropyCallbackFunPtr - :: BotanRNGAddEntropyCallback ctx - -> IO (FunPtr (BotanRNGAddEntropyCallback ctx)) - --- | Callback called when rng is destroyed -type BotanRNGDestroyCallback ctx - = Ptr ctx -- ^ __context__ - -> IO () - --- NOTE: "Wrapper stubs can't be used with CApiFFI." -foreign import ccall "wrapper" - mallocBotanRNGDestroyCallbackFunPtr - :: BotanRNGDestroyCallback ctx - -> IO (FunPtr (BotanRNGDestroyCallback ctx)) - --- | Initialize a custom random number generator from a set of callback functions -foreign import capi safe "botan/ffi.h botan_rng_init_custom" - botan_rng_init_custom - :: Ptr BotanRNG -- ^ __rng_out__ - -> ConstPtr CChar -- ^ __rng_name__: name of the rng - -> Ptr ctx -- ^ __context__: an application-specific context passed to the callback functions - -> FunPtr (BotanRNGGetCallback ctx) -- ^ __get_cb__ - -> FunPtr (BotanRNGAddEntropyCallback ctx) -- ^ __add_entropy_cb__: may be NULL - -> FunPtr (BotanRNGDestroyCallback ctx) -- ^ __destroy_cb__: may be NULL - -> IO CInt - --- | Get random bytes from a random number generators -foreign import capi safe "botan/ffi.h botan_rng_get" - botan_rng_get - :: BotanRNG -- ^ __rng__: rng object - -> Ptr Word8 -- ^ __out__: output buffer of size out_len - -> CSize -- ^ __out_len__: number of requested bytes - -> IO CInt -- ^ 0 on success, negative on failure - --- | Get random bytes from system random number generator -foreign import capi safe "botan/ffi.h botan_system_rng_get" - botan_system_rng_get - :: Ptr Word8 -- ^ __out__: output buffer of size out_len - -> CSize -- ^ __out_len__: number of requested bytes - -> IO CInt -- ^ 0 on success, negative on failure - -{- | -Reseed a random number generator - -Uses the System_RNG as a seed generator. --} -foreign import capi safe "botan/ffi.h botan_rng_reseed" - botan_rng_reseed - :: BotanRNG -- ^ __rng__: rng object - -> CSize -- ^ __bits__: number of bits to reseed with - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Reseed a random number generator -foreign import capi safe "botan/ffi.h botan_rng_reseed_from_rng" - botan_rng_reseed_from_rng - :: BotanRNG -- ^ __rng__: rng object - -> BotanRNG -- ^ __source_rng__: the rng that will be read from - -> CSize -- ^ __bits__: number of bits to reseed with - -> IO CInt -- ^ 0 on success, a negative value on failure - --- | Add some seed material to a random number generator -foreign import capi safe "botan/ffi.h botan_rng_add_entropy" - botan_rng_add_entropy - :: BotanRNG -- ^ __rng__: rng object - -> ConstPtr Word8 -- ^ __entropy__: the data to add - -> CSize -- ^ __entropy_len__: length of entropy buffer - -> IO CInt -- ^ 0 on success, a negative value on failure diff --git a/botan-bindings/src/Botan/Bindings/SRP6.hs b/botan-bindings/src/Botan/Bindings/SRP6.hs index 2e03d159..7fe63cee 100644 --- a/botan-bindings/src/Botan/Bindings/SRP6.hs +++ b/botan-bindings/src/Botan/Bindings/SRP6.hs @@ -16,111 +16,53 @@ C++ API reference. {-# LANGUAGE CApiFFI #-} module Botan.Bindings.SRP6 ( - BotanSRP6ServerSessionStruct - , BotanSRP6ServerSession (..) - , botan_srp6_server_session_destroy - , botan_srp6_server_session_init + -- $srp6 + Types.Botan_srp6_server_session_t (..) + , Types.Botan_srp6_server_session_struct + , Safe.botan_srp6_server_session_destroy + , botan_srp6_server_session_destroy_ptr + , Safe.botan_srp6_server_session_init , botan_srp6_server_session_step1 , botan_srp6_server_session_step2 , botan_srp6_generate_verifier , botan_srp6_client_agree - , botan_srp6_group_size + , Safe.botan_srp6_group_size ) where -import Botan.Bindings.Prelude -import Botan.Bindings.RNG +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) --- | Opaque SRP-6 server session struct -data {-# CTYPE "botan/ffi.h" "struct botan_srp6_server_session_struct" #-} BotanSRP6ServerSessionStruct +{- $srp6 --- | SRP-6 server session object -newtype {-# CTYPE "botan/ffi.h" "botan_srp6_server_session_t" #-} BotanSRP6ServerSession - = MkBotanSRP6ServerSession { runBotanSRP6ServerSession :: Ptr BotanSRP6ServerSessionStruct } - deriving newtype (Eq, Ord, Storable) +'Safe.botan_srp6_server_session_destroy' (or its 'FunPtr' variant) should be not +be invoked twice on the same server session. Regardless of the result of the +first invocation, the second invocation will result in an error. See +https://github.com/randombit/botan/issues/5112 for more information. If a second +invocation can not be prevented, try it on a newly initialised server session +instead. --- | Frees all resources of the SRP-6 server session object --- --- NOTE: this a binding to the /address/ of the --- @botan_srp6_server_session_destroy@ C function. -foreign import capi safe "botan/ffi.h &botan_srp6_server_session_destroy" - botan_srp6_server_session_destroy - :: FinalizerPtr BotanSRP6ServerSessionStruct - --- | Initialize an SRP-6 server session object -foreign import capi safe "botan/ffi.h botan_srp6_server_session_init" - botan_srp6_server_session_init - :: Ptr BotanSRP6ServerSession -- ^ __srp6__: SRP-6 server session object - -> IO CInt +'Safe.botan_srp6_group_size' can be used to determine the size of output +buffers for generated keys in the SRP6 algorithm. Such buffers need to be +allocated before calling SRP6 functions. An example of such a buffer is the +@verifier[]@ buffer in the 'botan_srp6_generate_verifier' function. +-} --- | SRP-6 Server side step 1 --- --- NOTE: this function should be not be invoked twice on the same server --- session. Regardless of the result of the first invocation, the second --- invocation will result in an error. See --- https://github.com/randombit/botan/issues/5112 for more information. If a --- second invocation can not be prevented, try it on a newly initialised server --- session instead. -foreign import capi safe "botan/ffi.h botan_srp6_server_session_step1" - botan_srp6_server_session_step1 - :: BotanSRP6ServerSession -- ^ __srp6__: SRP-6 server session object - -> ConstPtr Word8 -- ^ __verifier[]__: the verification value saved from client registration - -> CSize -- ^ __verifier_len__: SRP-6 verifier value length - -> ConstPtr CChar -- ^ __group_id__: the SRP group id - -> ConstPtr CChar -- ^ __hash_id__: the SRP hash in use - -> BotanRNG -- ^ __rng_obj__: a random number generator object - -> Ptr Word8 -- ^ __B_pub[]__: out buffer to store the SRP-6 B value - -> Ptr CSize -- ^ __B_pub_len__: SRP-6 B value length - -> IO CInt -- ^ 0 on success, negative on failure +botan_srp6_server_session_destroy_ptr :: FunPtr (Types.Botan_srp6_server_session_t -> IO CInt) +botan_srp6_server_session_destroy_ptr = FunPtr.botan_srp6_server_session_destroy --- | SRP-6 Server side step 2 -foreign import capi safe "botan/ffi.h botan_srp6_server_session_step2" - botan_srp6_server_session_step2 - :: BotanSRP6ServerSession -- ^ __srp6__: SRP-6 server session object - -> ConstPtr Word8 -- ^ __A[]__: the client's value - -> CSize -- ^ __A_len__: the client's value length - -> Ptr Word8 -- ^ __key[]__: out buffer to store the symmetric key value - -> Ptr CSize -- ^ __key_len__: symmetric key length - -> IO CInt -- ^ 0 on success, negative on failure +botan_srp6_server_session_step1 :: Types.Botan_srp6_server_session_t -> ConstPtr Word8 -> CSize -> ConstPtr CChar -> ConstPtr CChar -> Types.Botan_rng_t -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_srp6_server_session_step1 = Safe.botan_srp6_server_session_step1_wrapper --- | Generate a new SRP-6 verifier -foreign import capi safe "botan/ffi.h botan_srp6_generate_verifier" - botan_srp6_generate_verifier - :: ConstPtr CChar -- ^ __identifier__: a username or other client identifier - -> ConstPtr CChar -- ^ __password__: the secret used to authenticate user - -> ConstPtr Word8 -- ^ __salt[]__: a randomly chosen value, at least 128 bits long - -> CSize -- ^ __salt_len__: the length of salt - -> ConstPtr CChar -- ^ __group_id__: specifies the shared SRP group - -> ConstPtr CChar -- ^ __hash_id__: specifies a secure hash function - -> Ptr Word8 -- ^ __verifier[]__: out buffer to store the SRP-6 verifier value - -> Ptr CSize -- ^ __verifier_len__: SRP-6 verifier value length - -> IO CInt -- ^ 0 on success, negative on failure +botan_srp6_server_session_step2 :: Types.Botan_srp6_server_session_t -> ConstPtr Word8 -> CSize -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_srp6_server_session_step2 = Safe.botan_srp6_server_session_step2_wrapper --- | SRP6a Client side -foreign import capi safe "botan/ffi.h botan_srp6_client_agree" - botan_srp6_client_agree - :: ConstPtr CChar -- ^ __username__: the username we are attempting login for - -> ConstPtr CChar -- ^ __password__: the password we are attempting to use - -> ConstPtr CChar -- ^ __group_id__: specifies the shared SRP group - -> ConstPtr CChar -- ^ __hash_id__: specifies a secure hash function - -> ConstPtr Word8 -- ^ __salt[]__: is the salt value sent by the server - -> CSize -- ^ __salt_len__: the length of salt - -> ConstPtr Word8 -- ^ __B[]__: is the server's public value - -> CSize -- ^ __B_len__: is the server's public value length - -> BotanRNG -- ^ __rng_obj__: is a random number generator object - -> Ptr Word8 -- ^ __A[]__: out buffer to store the SRP-6 A value - -> Ptr CSize -- ^ __A_len__: SRP-6 A verifier value length - -> Ptr Word8 -- ^ __K[]__: out buffer to store the symmetric value - -> Ptr CSize -- ^ __K_len__: symmetric key length - -> IO CInt -- ^ 0 on success, negative on failure +botan_srp6_generate_verifier :: ConstPtr CChar -> ConstPtr CChar -> ConstPtr Word8 -> CSize -> ConstPtr CChar -> ConstPtr CChar -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_srp6_generate_verifier = Safe.botan_srp6_generate_verifier_wrapper --- | Return the size, in bytes, of the prime associated with group_id --- --- This function can be used to determine the size of output buffers for --- generated keys in the SRP6 algorithm. Such buffers need to be allocated --- before calling SRP6 functions. An example of such a buffer is the --- @verifier[]@ buffer in the 'botan_srp6_generate_verifier' function. -foreign import capi safe "botan/ffi.h botan_srp6_group_size" - botan_srp6_group_size - :: ConstPtr CChar -- ^ __group_id__ - -> Ptr CSize -- ^ __group_p_bytes__ - -> IO CInt +botan_srp6_client_agree :: ConstPtr CChar -> ConstPtr CChar -> ConstPtr CChar -> ConstPtr CChar -> ConstPtr Word8 -> CSize -> ConstPtr Word8 -> CSize -> Types.Botan_rng_t -> Ptr Word8 -> Ptr CSize -> Ptr Word8 -> Ptr CSize -> IO CInt +botan_srp6_client_agree = Safe.botan_srp6_client_agree_wrapper diff --git a/botan-bindings/src/Botan/Bindings/TOTP.hs b/botan-bindings/src/Botan/Bindings/TOTP.hs index c79c6cea..979ad964 100644 --- a/botan-bindings/src/Botan/Bindings/TOTP.hs +++ b/botan-bindings/src/Botan/Bindings/TOTP.hs @@ -7,91 +7,28 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -One time password schemes are a user authentication method that -relies on a fixed secret key which is used to derive a sequence -of short passwords, each of which is accepted only once. Commonly -this is used to implement two-factor authentication (2FA), where -the user authenticates using both a conventional password (or a -public key signature) and an OTP generated by a small device such -as a mobile phone. - -Botan implements the HOTP and TOTP schemes from RFC 4226 and 6238. - -Since the range of possible OTPs is quite small, applications must -rate limit OTP authentication attempts to some small number per -second. Otherwise an attacker could quickly try all 1000000 6-digit -OTPs in a brief amount of time. - -HOTP generates OTPs that are a short numeric sequence, between 6 -and 8 digits (most applications use 6 digits), created using the -HMAC of a 64-bit counter value. If the counter ever repeats the -OTP will also repeat, thus both parties must assure the counter -only increments and is never repeated or decremented. Thus both -client and server must keep track of the next counter expected. - -Anyone with access to the client-specific secret key can authenticate -as that client, so it should be treated with the same security -consideration as would be given to any other symmetric key or -plaintext password. - -TOTP is based on the same algorithm as HOTP, but instead of a -counter a timestamp is used. -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.TOTP ( - BotanTOTPStruct - , BotanTOTP (..) - , botan_totp_destroy + Types.Botan_totp_t (..) + , Types.Botan_totp_struct + , Safe.botan_totp_destroy + , botan_totp_destroy_ptr , botan_totp_init - , botan_totp_generate - , botan_totp_check + , Safe.botan_totp_generate + , Safe.botan_totp_check ) where -import Botan.Bindings.Prelude - --- NOTE: RFC 6238 - --- | Opaque TOTP struct -data {-# CTYPE "botan/ffi.h" "struct botan_totp_struct" #-} BotanTOTPStruct - --- | Botan TOTP object -newtype {-# CTYPE "botan/ffi.h" "botan_totp_t" #-} BotanTOTP - = MkBotanTOTP { runBotanTOTP :: Ptr BotanTOTPStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a TOTP instance -foreign import capi safe "botan/ffi.h &botan_totp_destroy" - botan_totp_destroy - :: FinalizerPtr BotanTOTPStruct - --- | Initialize a TOTP instance -foreign import capi safe "botan/ffi.h botan_totp_init" - botan_totp_init - :: Ptr BotanTOTP -- ^ __totp__ - -> ConstPtr Word8 -- ^ __key[]__ - -> CSize -- ^ __key_len__ - -> ConstPtr CChar -- ^ __hash_algo__ - -> CSize -- ^ __digits__ - -> CSize -- ^ __time_step__ - -> IO CInt +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CChar, CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) --- | Generate a TOTP code for the provided timestamp -foreign import capi safe "botan/ffi.h botan_totp_generate" - botan_totp_generate - :: BotanTOTP -- ^ __totp__: the TOTP object - -> Ptr Word32 -- ^ __totp_code__: the OTP code will be written here - -> Word64 -- ^ __timestamp__: the current local timestamp - -> IO CInt +botan_totp_destroy_ptr :: FunPtr (Types.Botan_totp_t -> IO CInt) +botan_totp_destroy_ptr = FunPtr.botan_totp_destroy --- | Verify a TOTP code -foreign import capi safe "botan/ffi.h botan_totp_check" - botan_totp_check - :: BotanTOTP -- ^ __totp__: the TOTP object - -> Word32 -- ^ __totp_code__: the presented OTP - -> Word64 -- ^ __timestamp__: the current local timestamp - -> CSize -- ^ __acceptable_clock_drift__: specifies the acceptable amount - -- of clock drift (in terms of time steps) between the two hosts. - -> IO CInt +botan_totp_init :: Ptr Types.Botan_totp_t -> ConstPtr Word8 -> CSize -> ConstPtr CChar -> CSize -> CSize -> IO CInt +botan_totp_init = Safe.botan_totp_init_wrapper diff --git a/botan-bindings/src/Botan/Bindings/Utility.hs b/botan-bindings/src/Botan/Bindings/Utility.hs new file mode 100644 index 00000000..a9dbb445 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/Utility.hs @@ -0,0 +1,28 @@ +{-| +Module : Botan.Bindings.Utility +Description : Utility functions +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX + +This module is based on the [Utility +Functions](https://botan.randombit.net/handbook/api_ref/ffi.html#utility-functions) +section of the C Botan FFI documentation. +-} + + +module Botan.Bindings.Utility ( + Safe.botan_constant_time_compare + , Safe.botan_scrub_mem + , Types.bOTAN_FFI_HEX_LOWER_CASE + , Safe.botan_hex_encode + , Safe.botan_hex_decode + , Safe.botan_base64_encode + , Safe.botan_base64_decode + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-bindings/src/Botan/Bindings/Utility.hsc b/botan-bindings/src/Botan/Bindings/Utility.hsc deleted file mode 100644 index 02b24a92..00000000 --- a/botan-bindings/src/Botan/Bindings/Utility.hsc +++ /dev/null @@ -1,86 +0,0 @@ -{-| -Module : Botan.Bindings.Utility -Description : Utility functions -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX - -This module is based on the [Utility -Functions](https://botan.randombit.net/handbook/api_ref/ffi.html#utility-functions) -section of the C Botan FFI documentation. --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.Utility ( - botan_constant_time_compare - , botan_scrub_mem - , pattern BOTAN_FFI_HEX_UPPER_CASE - , pattern BOTAN_FFI_HEX_LOWER_CASE - , botan_hex_encode - , botan_hex_decode - , botan_base64_encode - , botan_base64_decode - ) where - -import Botan.Bindings.Prelude - -#include - --- TODO: consider making bindings in this module unsafe. See issue #48. - --- | Returns 0 if x[0..len] == y[0..len], -1 otherwise. -foreign import capi safe "botan/ffi.h botan_constant_time_compare" - botan_constant_time_compare - :: ConstPtr Word8 -- ^ __x__ - -> ConstPtr Word8 -- ^ __y__ - -> CSize -- ^ __len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_scrub_mem" - botan_scrub_mem - :: Ptr a -- ^ __mem__ - -> CSize -- ^ __bytes__ - -> IO CInt - -pattern BOTAN_FFI_HEX_UPPER_CASE -- ^ NOTE: Not an actual flag - , BOTAN_FFI_HEX_LOWER_CASE - :: (Eq a, Num a) => a - -pattern BOTAN_FFI_HEX_UPPER_CASE = 0 -pattern BOTAN_FFI_HEX_LOWER_CASE = #const BOTAN_FFI_HEX_LOWER_CASE - -foreign import capi safe "botan/ffi.h botan_hex_encode" - botan_hex_encode - :: ConstPtr Word8 -- ^ __x__ - -> CSize -- ^ __len__ - -> Ptr CChar -- ^ __y__ - -> Word32 -- ^ __flags__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_hex_decode" - botan_hex_decode - :: ConstPtr CChar -- ^ __hex_str__ - -> CSize -- ^ __in_len__ - -> Ptr Word8 -- ^ __out__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_base64_encode" - botan_base64_encode - :: ConstPtr Word8 -- ^ __x__ - -> CSize -- ^ __len__ - -> Ptr CChar -- ^ __out__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_base64_decode" - botan_base64_decode - :: ConstPtr CChar -- ^ __base64_str__ - -> CSize -- ^ __in_len__ - -> Ptr Word8 -- ^ __out__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/Version.hs b/botan-bindings/src/Botan/Bindings/Version.hs index 98877dcb..cef2fef8 100644 --- a/botan-bindings/src/Botan/Bindings/Version.hs +++ b/botan-bindings/src/Botan/Bindings/Version.hs @@ -13,39 +13,14 @@ This module is based on the section of the C Botan FFI documentation. -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.Version ( - botan_ffi_api_version - , botan_ffi_supports_api - , botan_version_string - , botan_version_major - , botan_version_minor - , botan_version_patch - , botan_version_datestamp + Unsafe.botan_ffi_api_version + , Unsafe.botan_ffi_supports_api + , Unsafe.botan_version_string + , Unsafe.botan_version_major + , Unsafe.botan_version_minor + , Unsafe.botan_version_patch + , Unsafe.botan_version_datestamp ) where -import Botan.Bindings.Prelude - --- TODO: consider making these bindings unsafe. See issue #47. - -foreign import capi safe "botan/ffi.h botan_ffi_api_version" - botan_ffi_api_version :: IO Word32 - -foreign import capi safe "botan/ffi.h botan_ffi_supports_api" - botan_ffi_supports_api :: Word32 -> IO CInt - -foreign import capi safe "botan/ffi.h botan_version_string" - botan_version_string :: IO (ConstPtr CChar) - -foreign import capi safe "botan/ffi.h botan_version_major" - botan_version_major :: IO Word32 - -foreign import capi safe "botan/ffi.h botan_version_minor" - botan_version_minor :: IO Word32 - -foreign import capi safe "botan/ffi.h botan_version_patch" - botan_version_patch :: IO Word32 - -foreign import capi safe "botan/ffi.h botan_version_datestamp" - botan_version_datestamp :: IO Word32 +import qualified Botan.Bindings.Generated.Unsafe as Unsafe diff --git a/botan-bindings/src/Botan/Bindings/View.hs b/botan-bindings/src/Botan/Bindings/View.hs index 0b7d8565..7fb05767 100644 --- a/botan-bindings/src/Botan/Bindings/View.hs +++ b/botan-bindings/src/Botan/Bindings/View.hs @@ -13,65 +13,14 @@ Functions](https://botan.randombit.net/handbook/api_ref/ffi.html#view-functions) section of the C Botan FFI documentation. -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.View ( - BotanViewContext + Types.Botan_view_ctx (..) -- * View binary - , BotanViewBinFn - , BotanViewBinCallback - , mallocBotanViewBinCallback - , freeBotanViewBinCallback + , Types.Botan_view_bin_fn (..) + , Types.Botan_view_bin_fn_Deref (..) -- * View string - , BotanViewStrFn - , BotanViewStrCallback - , mallocBotanViewStrCallback - , freeBotanViewStrCallback + , Types.Botan_view_str_fn (..) + , Types.Botan_view_str_fn_Deref (..) ) where -import Botan.Bindings.Prelude - - -type BotanViewContext a = Ptr a - -{------------------------------------------------------------------------------- - View binary --------------------------------------------------------------------------------} - -type BotanViewBinFn ctx - = BotanViewContext ctx -- ^ __view_ctx__: some application context - -> ConstPtr Word8 -- ^ __data__: the binary data - -> CSize -- ^ __len__: the length of data in bytes - -> CInt - -type BotanViewBinCallback ctx = FunPtr (BotanViewBinFn ctx) - --- NOTE: Wrapper stubs can't be used with CApiFFI. -foreign import ccall "wrapper" - mallocBotanViewBinCallback - :: BotanViewBinFn ctx - -> IO (BotanViewBinCallback ctx) - -freeBotanViewBinCallback :: BotanViewBinCallback ctx -> IO () -freeBotanViewBinCallback = freeHaskellFunPtr - -{------------------------------------------------------------------------------- - View string --------------------------------------------------------------------------------} - -type BotanViewStrFn ctx - = BotanViewContext ctx -- ^ __view_ctx__: some application context - -> ConstPtr CChar -- ^ __str__: the null terminated string - -> CSize -- ^ __len__: the length of string *including* the null terminator - -> CInt - -type BotanViewStrCallback ctx = FunPtr (BotanViewStrFn ctx) - --- NOTE: Wrapper stubs can't be used with CApiFFI. -foreign import ccall "wrapper" - mallocBotanViewStrCallback - :: BotanViewStrFn ctx - -> IO (BotanViewStrCallback ctx) - -freeBotanViewStrCallback :: BotanViewStrCallback ctx -> IO () -freeBotanViewStrCallback = freeHaskellFunPtr +import qualified Botan.Bindings.Generated as Types diff --git a/botan-bindings/src/Botan/Bindings/X509.hs b/botan-bindings/src/Botan/Bindings/X509.hs new file mode 100644 index 00000000..58f0f6a6 --- /dev/null +++ b/botan-bindings/src/Botan/Bindings/X509.hs @@ -0,0 +1,78 @@ +{-| +Module : Botan.Bindings.X509 +Description : X.509 Certificates and CRLs +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Bindings.X509 ( + Types.Botan_x509_cert_t (..) + , Types.Botan_x509_cert_struct + , Safe.botan_x509_cert_destroy + , botan_x509_cert_destroy_ptr + , botan_x509_cert_load + , Safe.botan_x509_cert_load_file + , Safe.botan_x509_cert_dup + , Safe.botan_x509_cert_get_time_starts + , Safe.botan_x509_cert_get_time_expires + , Safe.botan_x509_cert_not_before + , Safe.botan_x509_cert_not_after + , Safe.botan_x509_cert_get_fingerprint + , Safe.botan_x509_cert_get_serial_number + , Safe.botan_x509_cert_get_authority_key_id + , Safe.botan_x509_cert_get_subject_key_id + , Safe.botan_x509_cert_get_public_key_bits + , Safe.botan_x509_cert_view_public_key_bits + , Safe.botan_x509_cert_get_public_key + , Safe.botan_x509_cert_get_issuer_dn + , Safe.botan_x509_cert_get_subject_dn + , Safe.botan_x509_cert_to_string + , Safe.botan_x509_cert_view_as_string + , Safe.botan_x509_cert_allowed_usage + , Safe.botan_x509_cert_hostname_match + , Safe.botan_x509_cert_verify + , Safe.botan_x509_cert_validation_status + , Types.Botan_x509_crl_t (..) + , Types.Botan_x509_crl_struct + , Safe.botan_x509_crl_destroy + , botan_x509_crl_destroy_ptr + , Safe.botan_x509_crl_load_file + , botan_x509_crl_load + , Safe.botan_x509_is_revoked + , Safe.botan_x509_cert_verify_with_crl + , Types.Botan_x509_cert_key_constraints(..) + , pattern Types.NO_CONSTRAINTS + , pattern Types.DIGITAL_SIGNATURE + , pattern Types.NON_REPUDIATION + , pattern Types.KEY_ENCIPHERMENT + , pattern Types.DATA_ENCIPHERMENT + , pattern Types.KEY_AGREEMENT + , pattern Types.KEY_CERT_SIGN + , pattern Types.CRL_SIGN + , pattern Types.ENCIPHER_ONLY + , pattern Types.DECIPHER_ONLY + ) where + +import qualified Botan.Bindings.Generated as Types +import qualified Botan.Bindings.Generated.FunPtr as FunPtr +import qualified Botan.Bindings.Generated.Safe as Safe +import Data.Word (Word8) +import Foreign.C.Types (CInt, CSize) +import Foreign.Ptr (FunPtr, Ptr) +import HsBindgen.Runtime.ConstPtr (ConstPtr) + +botan_x509_cert_destroy_ptr :: FunPtr (Types.Botan_x509_cert_t -> IO CInt) +botan_x509_cert_destroy_ptr = FunPtr.botan_x509_cert_destroy + +botan_x509_crl_destroy_ptr :: FunPtr (Types.Botan_x509_crl_t -> IO CInt) +botan_x509_crl_destroy_ptr = FunPtr.botan_x509_crl_destroy + +botan_x509_cert_load :: Ptr Types.Botan_x509_cert_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_x509_cert_load = Safe.botan_x509_cert_load_wrapper + +botan_x509_crl_load :: Ptr Types.Botan_x509_crl_t -> ConstPtr Word8 -> CSize -> IO CInt +botan_x509_crl_load = Safe.botan_x509_crl_load_wrapper diff --git a/botan-bindings/src/Botan/Bindings/X509.hsc b/botan-bindings/src/Botan/Bindings/X509.hsc deleted file mode 100644 index 80017e7b..00000000 --- a/botan-bindings/src/Botan/Bindings/X509.hsc +++ /dev/null @@ -1,342 +0,0 @@ -{-| -Module : Botan.Bindings.X509 -Description : X.509 Certificates and CRLs -Copyright : (c) 2023-2024, Apotheca Labs - (c) 2024-2025, Haskell Foundation -License : BSD-3-Clause -Maintainer : joris@well-typed.com, leo@apotheca.io -Stability : experimental -Portability : POSIX - -A certificate is a binding between some identifying information -(called a subject) and a public key. This binding is asserted by -a signature on the certificate, which is placed there by some -authority (the issuer) that at least claims that it knows the -subject named in the certificate really โ€œownsโ€ the private key -corresponding to the public key in the certificate. - -The major certificate format in use today is X.509v3, used for -instance in the Transport Layer Security (TLS) protocol. --} - -{-# LANGUAGE CApiFFI #-} - -module Botan.Bindings.X509 ( - BotanX509CertStruct - , BotanX509Cert (..) - , botan_x509_cert_destroy - , botan_x509_cert_load - , botan_x509_cert_load_file - , botan_x509_cert_dup - , botan_x509_cert_get_time_starts - , botan_x509_cert_get_time_expires - , botan_x509_cert_not_before - , botan_x509_cert_not_after - , botan_x509_cert_get_fingerprint - , botan_x509_cert_get_serial_number - , botan_x509_cert_get_authority_key_id - , botan_x509_cert_get_subject_key_id - , botan_x509_cert_get_public_key_bits - , botan_x509_cert_view_public_key_bits - , botan_x509_cert_get_public_key - , botan_x509_cert_get_issuer_dn - , botan_x509_cert_get_subject_dn - , botan_x509_cert_to_string - , botan_x509_cert_view_as_string - , pattern NO_CONSTRAINTS - , pattern DIGITAL_SIGNATURE - , pattern NON_REPUDIATION - , pattern KEY_ENCIPHERMENT - , pattern DATA_ENCIPHERMENT - , pattern KEY_AGREEMENT - , pattern KEY_CERT_SIGN - , pattern CRL_SIGN - , pattern ENCIPHER_ONLY - , pattern DECIPHER_ONLY - , botan_x509_cert_allowed_usage - , botan_x509_cert_hostname_match - , botan_x509_cert_verify - , botan_x509_cert_validation_status - , BotanX509CRLStruct - , BotanX509CRL (..) - , botan_x509_crl_destroy - , botan_x509_crl_load_file - , botan_x509_crl_load - , botan_x509_is_revoked - , botan_x509_cert_verify_with_crl - ) where - -import Botan.Bindings.Prelude -import Botan.Bindings.PubKey -import Botan.Bindings.View - -#include - --- | Opaque X509Cert struct -data {-# CTYPE "botan/ffi.h" "struct botan_x509_cert_struct" #-} BotanX509CertStruct - --- | Botan X509Cert object -newtype {-# CTYPE "botan/ffi.h" "botan_x509_cert_t" #-} BotanX509Cert - = MkBotanX509Cert { runBotanX509Cert :: Ptr BotanX509CertStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a X509Cert instance -foreign import capi safe "botan/ffi.h &botan_x509_cert_destroy" - botan_x509_cert_destroy - :: FinalizerPtr BotanX509CertStruct - -foreign import capi safe "botan/ffi.h botan_x509_cert_load" - botan_x509_cert_load - :: Ptr BotanX509Cert -- ^ __cert_obj__ - -> ConstPtr Word8 -- ^ __cert[]__ - -> CSize -- ^ __cert_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_load_file" - botan_x509_cert_load_file - :: Ptr BotanX509Cert -- ^ __cert_obj__ - -> ConstPtr CChar -- ^ __filename__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_dup" - botan_x509_cert_dup - :: Ptr BotanX509Cert -- ^ __new_cert__ - -> BotanX509Cert -- ^ __cert__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_time_starts" - botan_x509_cert_get_time_starts - :: BotanX509Cert -- ^ __cert__ - -> Ptr CChar -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_time_expires" - botan_x509_cert_get_time_expires - :: BotanX509Cert -- ^ __cert__ - -> Ptr CChar -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_not_before" - botan_x509_cert_not_before - :: BotanX509Cert -- ^ __cert__ - -> Ptr Word64 -- ^ __time_since_epoch__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_not_after" - botan_x509_cert_not_after - :: BotanX509Cert -- ^ __cert__ - -> Ptr Word64 -- ^ __time_since_epoch__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_fingerprint" - botan_x509_cert_get_fingerprint - :: BotanX509Cert -- ^ __cert__ - -> ConstPtr CChar -- ^ __hash__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_serial_number" - botan_x509_cert_get_serial_number - :: BotanX509Cert -- ^ __cert__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_authority_key_id" - botan_x509_cert_get_authority_key_id - :: BotanX509Cert -- ^ __cert__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_subject_key_id" - botan_x509_cert_get_subject_key_id - :: BotanX509Cert -- ^ __cert__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_public_key_bits" - botan_x509_cert_get_public_key_bits - :: BotanX509Cert -- ^ __cert__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_view_public_key_bits" - botan_x509_cert_view_public_key_bits - :: BotanX509Cert -- ^ __cert__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewBinCallback ctx -- ^ __view__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_public_key" - botan_x509_cert_get_public_key - :: BotanX509Cert -- ^ __cert__ - -> Ptr BotanPubKey -- ^ __key__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_issuer_dn" - botan_x509_cert_get_issuer_dn - :: BotanX509Cert -- ^ __cert__ - -> ConstPtr CChar -- ^ __key__ - -> CSize -- ^ __index__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_get_subject_dn" - botan_x509_cert_get_subject_dn - :: BotanX509Cert -- ^ __cert__ - -> ConstPtr CChar -- ^ __key__ - -> CSize -- ^ __index__ - -> Ptr Word8 -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_to_string" - botan_x509_cert_to_string - :: BotanX509Cert -- ^ __cert__ - -> Ptr CChar -- ^ __out[]__ - -> Ptr CSize -- ^ __out_len__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_cert_view_as_string" - botan_x509_cert_view_as_string - :: BotanX509Cert -- ^ __cert__ - -> BotanViewContext ctx -- ^ __ctx__ - -> BotanViewStrCallback ctx -- ^ __view__ - -> IO CInt - -pattern NO_CONSTRAINTS - , DIGITAL_SIGNATURE - , NON_REPUDIATION - , KEY_ENCIPHERMENT - , DATA_ENCIPHERMENT - , KEY_AGREEMENT - , KEY_CERT_SIGN - , CRL_SIGN - , ENCIPHER_ONLY - , DECIPHER_ONLY - :: (Eq a, Num a) => a -pattern NO_CONSTRAINTS = #const NO_CONSTRAINTS -pattern DIGITAL_SIGNATURE = #const DIGITAL_SIGNATURE -pattern NON_REPUDIATION = #const NON_REPUDIATION -pattern KEY_ENCIPHERMENT = #const KEY_ENCIPHERMENT -pattern DATA_ENCIPHERMENT = #const DATA_ENCIPHERMENT -pattern KEY_AGREEMENT = #const KEY_AGREEMENT -pattern KEY_CERT_SIGN = #const KEY_CERT_SIGN -pattern CRL_SIGN = #const CRL_SIGN -pattern ENCIPHER_ONLY = #const ENCIPHER_ONLY -pattern DECIPHER_ONLY = #const DECIPHER_ONLY - -foreign import capi safe "botan/ffi.h botan_x509_cert_allowed_usage" - botan_x509_cert_allowed_usage - :: BotanX509Cert -- ^ __cert__ - -> CUInt -- ^ __key_usage__ - -> IO CInt - -{- | -Check if the certificate matches the specified hostname via alternative name or CN match. -RFC 5280 wildcards also supported. --} -foreign import capi safe "botan/ffi.h botan_x509_cert_hostname_match" - botan_x509_cert_hostname_match - :: BotanX509Cert -- ^ __cert__ - -> ConstPtr CChar -- ^ __hostname__ - -> IO 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 --} -foreign import capi safe "botan/ffi.h botan_x509_cert_verify" - botan_x509_cert_verify - :: Ptr CInt -- ^ __validation_result__ - -> BotanX509Cert -- ^ __cert__ - -> ConstPtr BotanX509Cert -- ^ __intermediates__ - -> CSize -- ^ __intermediates_len__ - -> ConstPtr BotanX509Cert -- ^ __trusted__ - -> CSize -- ^ __trusted_len__ - -> ConstPtr CChar -- ^ __trusted_path__ - -> CSize -- ^ __required_strength__ - -> ConstPtr CChar -- ^ __hostname__ - -> Word64 -- ^ __reference_time__ - -> IO CInt - -{- | -Returns a pointer to a static character string explaining the status code, -or else NULL if unknown. --} -foreign import capi safe "botan/ffi.h botan_x509_cert_validation_status" - botan_x509_cert_validation_status - :: CInt -- ^ __code__ - -> IO (ConstPtr CChar) - -{- -X.509 CRL --} --- TODO: Move to X509.CRL - --- | Opaque X509CRL struct -data {-# CTYPE "botan/ffi.h" "struct botan_x509_crl_struct" #-} BotanX509CRLStruct - --- | Botan X509CRL object -newtype {-# CTYPE "botan/ffi.h" "botan_x509_crl_t" #-} BotanX509CRL - = MkBotanX509CRL { runBotanX509CRL :: Ptr BotanX509CRLStruct } - deriving newtype (Eq, Ord, Storable) - --- | Destroy a X509CRL instance -foreign import capi safe "botan/ffi.h &botan_x509_crl_destroy" - botan_x509_crl_destroy - :: FinalizerPtr BotanX509CRLStruct - -foreign import capi safe "botan/ffi.h botan_x509_crl_load_file" - botan_x509_crl_load_file - :: Ptr BotanX509CRL -- ^ __crl_obj__ - -> ConstPtr CChar -- ^ __crl_path__ - -> IO CInt - -foreign import capi safe "botan/ffi.h botan_x509_crl_load" - botan_x509_crl_load - :: Ptr BotanX509CRL -- ^ __crl_obj__ - -> ConstPtr Word8 -- ^ __crl_bits[]__ - -> CSize -- ^ __crl_bits_len__ - -> IO CInt - -{- | -Given a CRL and a certificate, -check if the certificate is revoked on that particular CRL --} -foreign import capi safe "botan/ffi.h botan_x509_is_revoked" - botan_x509_is_revoked - :: BotanX509CRL -- ^ __crl__ - -> BotanX509Cert -- ^ __cert__ - -> IO CInt - -{- | -Different flavor of `botan_x509_cert_verify`, supports revocation lists. -CRLs are passed as an array, same as intermediates and trusted CAs --} -foreign import capi safe "botan/ffi.h botan_x509_cert_verify_with_crl" - botan_x509_cert_verify_with_crl - :: Ptr CInt -- ^ __validation_result__ - -> BotanX509Cert -- ^ __cert__ - -> ConstPtr BotanX509Cert -- ^ __intermediates__ - -> CSize -- ^ __intermediates_len__ - -> ConstPtr BotanX509Cert -- ^ __trusted__ - -> CSize -- ^ __trusted_len__ - -> ConstPtr BotanX509CRL -- ^ __crls__ - -> CSize -- ^ __crls_len__ - -> ConstPtr CChar -- ^ __trusted_path__ - -> CSize -- ^ __required_strength__ - -> ConstPtr CChar -- ^ __hostname__ - -> Word64 -- ^ __reference_time__ - -> IO CInt diff --git a/botan-bindings/src/Botan/Bindings/ZFEC.hs b/botan-bindings/src/Botan/Bindings/ZFEC.hs index 2dd2ad98..9d2a36be 100644 --- a/botan-bindings/src/Botan/Bindings/ZFEC.hs +++ b/botan-bindings/src/Botan/Bindings/ZFEC.hs @@ -7,65 +7,11 @@ License : BSD-3-Clause Maintainer : joris@well-typed.com, leo@apotheca.io Stability : experimental Portability : POSIX - -The ZFEC module provides forward error correction compatible -with the zfec library. - -Forward error correction takes an input and creates multiple -โ€œsharesโ€, such that any K of N shares is sufficient to recover -the entire original input. - -Note - -Specific to the ZFEC format, the first K generated shares are -identical to the original input data, followed by N-K shares of -error correcting code. This is very different from threshold -secret sharing, where having fewer than K shares gives no -information about the original input. - -Warning - -If a corrupted share is provided to the decoding algorithm, the -resulting decoding will be invalid. It is recommended to protect -shares using a technique such as a MAC or public key signature, -if corruption is likely in your application. - -ZFEC requires that the input length be exactly divisible by K; if -needed define a padding scheme to pad your input to the necessary -size. -} -{-# LANGUAGE CApiFFI #-} - module Botan.Bindings.ZFEC ( - botan_zfec_encode - , botan_zfec_decode + Safe.botan_zfec_encode + , Safe.botan_zfec_decode ) where -import Botan.Bindings.Prelude - --- | Encode some bytes with certain ZFEC parameters. -foreign import capi safe "botan/ffi.h botan_zfec_encode" - botan_zfec_encode - :: CSize -- ^ __K__: the number of shares needed for recovery - -> CSize -- ^ __N__: the number of shares generated - -> ConstPtr Word8 -- ^ __input__: the data to FEC - -> CSize -- ^ __size__: the length in bytes of input, which must be a multiple of K - -> Ptr (Ptr Word8) -- ^ __outputs__: 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]. - -> IO CInt -- ^ 0 on success, negative on failure - --- | Decode some previously encoded shares using certain ZFEC parameters. -foreign import capi safe "botan/ffi.h botan_zfec_decode" - botan_zfec_decode - :: CSize -- ^ __K__: the number of shares needed for recovery - -> CSize -- ^ __N__: the total number of shares - -> ConstPtr CSize -- ^ __indexes__: The index into the encoder's outputs for the corresponding - -- element of the inputs array. Must be of length K. - -> ConstPtr (ConstPtr Word8) -- ^ __inputs__: K previously encoded shares to decode - -> CSize -- ^ __shareSize__: the length in bytes of each input - -> Ptr (Ptr Word8) -- ^ __outputs__: 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]. - -> IO CInt -- ^ 0 on success, negative on failure +import qualified Botan.Bindings.Generated.Safe as Safe diff --git a/botan-low/botan-low.cabal b/botan-low/botan-low.cabal index e450a59b..49e9cb22 100644 --- a/botan-low/botan-low.cabal +++ b/botan-low/botan-low.cabal @@ -122,6 +122,8 @@ library Botan.Low.ZFEC other-modules: + Botan.Low.Error.Internal + Botan.Low.Internal Botan.Low.Make Botan.Low.Prelude Botan.Low.Remake @@ -133,6 +135,7 @@ library botan-bindings ^>=0.0 || ^>=0.1, bytestring >=0.11 && <0.13, deepseq >=1.1 && <2, + hs-bindgen-runtime ^>=0.1, text >=1.2 && <1.3 || >=2.0 && <2.2, test-suite test diff --git a/botan-low/src/Botan/Low/Bcrypt.hs b/botan-low/src/Botan/Low/Bcrypt.hs index 09bb59a9..133ad6d6 100644 --- a/botan-low/src/Botan/Low/Bcrypt.hs +++ b/botan-low/src/Botan/Low/Bcrypt.hs @@ -39,7 +39,7 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.Bcrypt -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Prelude import Botan.Low.RNG @@ -94,13 +94,13 @@ pattern BcryptFast :: BcryptWorkFactor -- | Should not cause noticable CPU usage -pattern BcryptFast = BOTAN_BCRYPT_WORK_FACTOR_FAST +pattern BcryptFast = 12 -- | May cause noticable CPU usage -pattern BcryptGood = BOTAN_BCRYPT_WORK_FACTOR_GOOD +pattern BcryptGood = 14 -- | May block for several seconds -pattern BcryptStrong = BOTAN_BCRYPT_WORK_FACTOR_STRONG +pattern BcryptStrong = 16 -- | A bcrypt password. type BcryptPassword = ByteString diff --git a/botan-low/src/Botan/Low/BlockCipher.hs b/botan-low/src/Botan/Low/BlockCipher.hs index d8faa7b3..6ba8164f 100644 --- a/botan-low/src/Botan/Low/BlockCipher.hs +++ b/botan-low/src/Botan/Low/BlockCipher.hs @@ -70,8 +70,9 @@ module Botan.Low.BlockCipher ( ) where import Botan.Bindings.BlockCipher -import Botan.Low.Error +import Botan.Low.Error.Internal (throwBotanIfNegative_) import Botan.Low.Hash +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.Remake @@ -180,17 +181,17 @@ True -------------------------------------------------------------------------------} -- | A mutable block cipher object -newtype BlockCipher = MkBlockCipher { getBlockCipherForeignPtr :: ForeignPtr BotanBlockCipherStruct } +newtype BlockCipher = MkBlockCipher { getBlockCipherForeignPtr :: ForeignPtr Botan_block_cipher_struct } -withBlockCipher :: BlockCipher -> (BotanBlockCipher -> IO a) -> IO a +withBlockCipher :: BlockCipher -> (Botan_block_cipher_t -> IO a) -> IO a -- | Destroy a block cipher object immediately blockCipherDestroy :: BlockCipher -> IO () -createBlockCipher :: (Ptr BotanBlockCipher -> IO CInt) -> IO BlockCipher +createBlockCipher :: (Ptr Botan_block_cipher_t -> IO CInt) -> IO BlockCipher (withBlockCipher, blockCipherDestroy, createBlockCipher) = mkBindings - MkBotanBlockCipher runBotanBlockCipher + Botan_block_cipher_t un_Botan_block_cipher_t MkBlockCipher getBlockCipherForeignPtr - botan_block_cipher_destroy + (Internal.funPtrIgnoreRetCode botan_block_cipher_destroy_ptr) -- | A block cipher secret key diff --git a/botan-low/src/Botan/Low/Cipher.hs b/botan-low/src/Botan/Low/Cipher.hs index b222e366..021895fa 100644 --- a/botan-low/src/Botan/Low/Cipher.hs +++ b/botan-low/src/Botan/Low/Cipher.hs @@ -27,12 +27,12 @@ module Botan.Low.Cipher ( , CipherKey , CipherNonce , CipherInitFlags - , pattern MaskDirection - , pattern Encrypt - , pattern Decrypt + , maskDirectionF + , encryptF + , decryptF , CipherUpdateFlags - , pattern CipherUpdate - , pattern CipherFinal + , cipherUpdateF + , cipherFinalF , withCipher , cipherInit , cipherDestroy @@ -99,7 +99,8 @@ module Botan.Low.Cipher ( import Botan.Bindings.Cipher import Botan.Low.BlockCipher -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.Remake @@ -187,17 +188,17 @@ If you are encrypting or decrypting multiple messages with the same key, you can -- NOTE: This is *symmetric* ciphers For the 'raw' interface to ECB mode block ciphers, see BlockCipher.hs -newtype Cipher = MkCipher { getCipherForeignPtr :: ForeignPtr BotanCipherStruct } +newtype Cipher = MkCipher { getCipherForeignPtr :: ForeignPtr Botan_cipher_struct } -withCipher :: Cipher -> (BotanCipher -> IO a) -> IO a +withCipher :: Cipher -> (Botan_cipher_t -> IO a) -> IO a -- | Destroy the cipher object immediately cipherDestroy :: Cipher -> IO () -createCipher :: (Ptr BotanCipher -> IO CInt) -> IO Cipher +createCipher :: (Ptr Botan_cipher_t -> IO CInt) -> IO Cipher (withCipher, cipherDestroy, createCipher) = mkBindings - MkBotanCipher runBotanCipher + Botan_cipher_t un_Botan_cipher_t MkCipher getCipherForeignPtr - botan_cipher_destroy + (Internal.funPtrIgnoreRetCode botan_cipher_destroy_ptr) type CipherInitFlags = Word32 type CipherUpdateFlags = Int @@ -306,21 +307,15 @@ allCiphers = cipherModes ++ aeads -- TODO: Rename CipherMaskDirection, CipherEncrypt, CipherDecrypt; -- Leave slim terminology for botan -pattern MaskDirection - , Encrypt -- ^ May be renamed Encipher to avoid confusion with PKEncrypt - , Decrypt -- ^ May be renamed Decipher to avoid confusion with PKDecrypt - :: CipherInitFlags -pattern MaskDirection = BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION -pattern Encrypt = BOTAN_CIPHER_INIT_FLAG_ENCRYPT -pattern Decrypt = BOTAN_CIPHER_INIT_FLAG_DECRYPT +maskDirectionF, encryptF, decryptF :: CipherInitFlags +maskDirectionF = fromIntegral bOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION +encryptF = fromIntegral bOTAN_CIPHER_INIT_FLAG_ENCRYPT +decryptF = fromIntegral bOTAN_CIPHER_INIT_FLAG_DECRYPT -pattern CipherUpdate - , CipherFinal - :: CipherUpdateFlags - -pattern CipherUpdate = BOTAN_CIPHER_UPDATE_FLAG_NONE -pattern CipherFinal = BOTAN_CIPHER_UPDATE_FLAG_FINAL +cipherUpdateF, cipherFinalF :: CipherUpdateFlags +cipherUpdateF = 0 +cipherFinalF = fromIntegral bOTAN_CIPHER_UPDATE_FLAG_FINAL -- |Initialize a cipher object cipherInit @@ -477,7 +472,7 @@ cipherUpdate ctx flags outputSz input = (ConstPtr inputPtr) -- No input should be provided on the second try if the first -- try had the FINAL flag set - (if flags .&. BOTAN_CIPHER_UPDATE_FLAG_FINAL /= 0 then 0 else inputSz) + (if flags .&. fromIntegral bOTAN_CIPHER_UPDATE_FLAG_FINAL /= 0 then 0 else inputSz) consumedPtr Right bs -> pure bs consumed <- fromIntegral <$> peek consumedPtr @@ -518,7 +513,7 @@ cipherEstimateOutputLength ctx flags input = do o <- cipherOutputLength ctx input -- NOTE: Flawed but usable u <- cipherGetUpdateGranularity ctx -- TODO: When u == 1, it should be just input + t, right? t <- cipherGetTagLength ctx - if flags == BOTAN_CIPHER_INIT_FLAG_ENCRYPT + if flags == fromIntegral bOTAN_CIPHER_INIT_FLAG_ENCRYPT then return (o + u + t) else return (o + u - t) -- TODO: Maybe just 'o'... @@ -553,15 +548,15 @@ cipherProcessOffline :: Cipher -> CipherInitFlags -> ByteString -> IO ByteString cipherProcessOffline ctx flags msg = do o <- cipherEstimateOutputLength ctx flags (ByteString.length msg) -- snd <$> cipherUpdate ctx BOTAN_CIPHER_UPDATE_FLAG_FINAL o msg - fst <$> cipherProcess ctx BOTAN_CIPHER_UPDATE_FLAG_FINAL o msg + fst <$> cipherProcess ctx (fromIntegral bOTAN_CIPHER_UPDATE_FLAG_FINAL) o msg {-# WARNING cipherEncryptOffline "May be renamed to cipherEncrypt, may be moved to botan" #-} cipherEncryptOffline :: Cipher -> ByteString -> IO ByteString -cipherEncryptOffline ctx = cipherProcessOffline ctx BOTAN_CIPHER_INIT_FLAG_ENCRYPT +cipherEncryptOffline ctx = cipherProcessOffline ctx $ fromIntegral bOTAN_CIPHER_INIT_FLAG_ENCRYPT {-# WARNING cipherDecryptOffline "May be renamed to cipherDecrypt, may be moved to botan" #-} cipherDecryptOffline :: Cipher -> ByteString -> IO ByteString -cipherDecryptOffline ctx = cipherProcessOffline ctx BOTAN_CIPHER_INIT_FLAG_DECRYPT +cipherDecryptOffline ctx = cipherProcessOffline ctx $ fromIntegral bOTAN_CIPHER_INIT_FLAG_DECRYPT {- Experiments with online processing @@ -595,11 +590,11 @@ cipherEncryptOnline ctx msg = do where go i g bs = case ByteString.splitAt g bs of (block,"") -> do - o <- cipherEstimateFinalOutputLength ctx BOTAN_CIPHER_INIT_FLAG_ENCRYPT i (ByteString.length block) - (processed,_) <- cipherProcess ctx BOTAN_CIPHER_UPDATE_FLAG_FINAL o block + o <- cipherEstimateFinalOutputLength ctx (fromIntegral bOTAN_CIPHER_INIT_FLAG_ENCRYPT) i (ByteString.length block) + (processed,_) <- cipherProcess ctx (fromIntegral bOTAN_CIPHER_UPDATE_FLAG_FINAL) o block return [processed] (block,rest) -> do - (processed,remaining) <- cipherProcess ctx BOTAN_CIPHER_UPDATE_FLAG_NONE g block + (processed,remaining) <- cipherProcess ctx 0 g block (processed :) <$> go (i + g) g (remaining <> rest) -- Though this following version may be more efficient especially with lazy bytestrings -- or builder, though note *which* update function it uses - the original @@ -616,9 +611,9 @@ cipherDecryptOnline ctx msg = do where go i g t bs = case ByteString.splitAt g bs of (block,"") -> do - o <- cipherEstimateFinalOutputLength ctx BOTAN_CIPHER_INIT_FLAG_DECRYPT i (ByteString.length block) - (processed,_) <- cipherProcess ctx BOTAN_CIPHER_UPDATE_FLAG_FINAL o block + o <- cipherEstimateFinalOutputLength ctx (fromIntegral bOTAN_CIPHER_INIT_FLAG_DECRYPT) i (ByteString.length block) + (processed,_) <- cipherProcess ctx (fromIntegral bOTAN_CIPHER_UPDATE_FLAG_FINAL) o block return [processed] (block,rest) -> do - (processed,remaining) <- cipherProcess ctx BOTAN_CIPHER_UPDATE_FLAG_NONE g block + (processed,remaining) <- cipherProcess ctx 0 g block (processed :) <$> go (i + g) g t (remaining <> rest) diff --git a/botan-low/src/Botan/Low/Error.hs b/botan-low/src/Botan/Low/Error.hs index 3b42be71..bad99c2c 100644 --- a/botan-low/src/Botan/Low/Error.hs +++ b/botan-low/src/Botan/Low/Error.hs @@ -15,390 +15,32 @@ section of the C Botan FFI documentation. module Botan.Low.Error ( -- * Error codes - BotanErrorCode - , pattern Success - , pattern InvalidIdentifier - , pattern InvalidInput - , pattern BadMAC - , pattern InsufficientBufferSpace - , pattern StringConversionError - , pattern ExceptionThrown - , pattern OutOfMemory - , pattern SystemError - , pattern InternalError - , pattern BadFlag - , pattern NullPointer - , pattern BadParameter - , pattern KeyNotSet - , pattern InvalidKeyLength - , pattern InvalidObjectState - , pattern NotImplemented - , pattern InvalidObject - , pattern TLSError - , pattern HttpError - , pattern RoughtimeError - , pattern UnknownError - -- ** Functions - , botanErrorDescription - , botanErrorLastExceptionMessage - -- * Exceptions - , SomeBotanException(..) - , toBotanException - , fromBotanException - , InvalidInputException(..) - , BadMACException(..) - , InsufficientBufferSpaceException(..) - , StringConversionException(..) - , ExceptionThrownException(..) - , OutOfMemoryException(..) - , SystemErrorException(..) - , InternalErrorException(..) - , BadFlagException(..) - , NullPointerException(..) - , BadParameterException(..) - , KeyNotSetException(..) - , InvalidKeyLengthException(..) - , InvalidObjectStateException(..) - , NotImplementedException(..) - , InvalidObjectException(..) - , UnknownException(..) - -- ** Throwing and catching - , throwBotanError - , throwBotanIfNegative - , throwBotanIfNegative_ - , throwBotanCatchingSuccess - , throwBotanCatchingBool - , throwBotanCatchingInt - , throwBotanErrorWithCallstack - , tryBotan - , catchBotan - , handleBotan + Internal.BotanErrorCode + , Internal.botanErrorDescription + , Internal.BotanErrorMessage(..) + , Internal.botanErrorLastExceptionMessage + -- * Exception hierarchy + , Internal.SomeBotanException(..) + , Internal.toBotanException + , Internal.fromBotanException + -- * Individual exceptions + , Internal.InvalidInputException(..) + , Internal.BadMACException(..) + , Internal.InsufficientBufferSpaceException(..) + , Internal.StringConversionException(..) + , Internal.ExceptionThrownException(..) + , Internal.OutOfMemoryException(..) + , Internal.SystemErrorException(..) + , Internal.InternalErrorException(..) + , Internal.BadFlagException(..) + , Internal.NullPointerException(..) + , Internal.BadParameterException(..) + , Internal.KeyNotSetException(..) + , Internal.InvalidKeyLengthException(..) + , Internal.InvalidObjectStateException(..) + , Internal.NotImplementedException(..) + , Internal.InvalidObjectException(..) + , Internal.UnknownException(..) ) where -import Data.Typeable - -import Botan.Bindings.Error - -import Botan.Low.Prelude - --- TODO: we are missing some exceptions for return codes. See issue #45. - -{------------------------------------------------------------------------------- - Error codes --------------------------------------------------------------------------------} - -type BotanErrorCode = CInt - -pattern Success - , InvalidIdentifier - , InvalidInput - , BadMAC - , InsufficientBufferSpace - , StringConversionError - , ExceptionThrown - , OutOfMemory - , SystemError - , InternalError - , BadFlag - , NullPointer - , BadParameter - , KeyNotSet - , InvalidKeyLength - , InvalidObjectState - , NotImplemented - , InvalidObject - , TLSError - , HttpError - , RoughtimeError - , UnknownError - :: BotanErrorCode - -pattern Success = BOTAN_FFI_SUCCESS -pattern InvalidIdentifier = BOTAN_FFI_INVALID_VERIFIER -pattern InvalidInput = BOTAN_FFI_ERROR_INVALID_INPUT -pattern BadMAC = BOTAN_FFI_ERROR_BAD_MAC -pattern InsufficientBufferSpace = BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE -pattern StringConversionError = BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR -pattern ExceptionThrown = BOTAN_FFI_ERROR_EXCEPTION_THROWN -pattern OutOfMemory = BOTAN_FFI_ERROR_OUT_OF_MEMORY -pattern SystemError = BOTAN_FFI_ERROR_SYSTEM_ERROR -pattern InternalError = BOTAN_FFI_ERROR_INTERNAL_ERROR -pattern BadFlag = BOTAN_FFI_ERROR_BAD_FLAG -pattern NullPointer = BOTAN_FFI_ERROR_NULL_POINTER -pattern BadParameter = BOTAN_FFI_ERROR_BAD_PARAMETER -pattern KeyNotSet = BOTAN_FFI_ERROR_KEY_NOT_SET -pattern InvalidKeyLength = BOTAN_FFI_ERROR_INVALID_KEY_LENGTH -pattern InvalidObjectState = BOTAN_FFI_ERROR_INVALID_OBJECT_STATE -pattern NotImplemented = BOTAN_FFI_ERROR_NOT_IMPLEMENTED -pattern InvalidObject = BOTAN_FFI_ERROR_INVALID_OBJECT -pattern TLSError = BOTAN_FFI_ERROR_TLS_ERROR -pattern HttpError = BOTAN_FFI_ERROR_HTTP_ERROR -pattern RoughtimeError = BOTAN_FFI_ERROR_ROUGHTIME_ERROR -pattern UnknownError = BOTAN_FFI_ERROR_UNKNOWN_ERROR - -{------------------------------------------------------------------------------- - Error codes: functions --------------------------------------------------------------------------------} - --- | Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. -botanErrorDescription :: BotanErrorCode -> IO ByteString -botanErrorDescription e = do - descPtr <- botan_error_description e - peekCString (unConstPtr descPtr) - --- | Returns a static string stored in a thread local variable which contains the last exception message thrown. --- WARNING: This string buffer is overwritten on the next call to the FFI layer -botanErrorLastExceptionMessage :: IO ErrorMessage -botanErrorLastExceptionMessage = do - msgPtr <- botan_error_last_exception_message - peekCString (unConstPtr msgPtr) - -type ErrorMessage = ByteString - -{------------------------------------------------------------------------------- - Exceptions --------------------------------------------------------------------------------} - --- | The SomeBotanException type is the root of the botan exception type hierarchy. -data SomeBotanException = forall e . Exception e => SomeBotanException e - -instance Show SomeBotanException where - show (SomeBotanException e) = show e - -instance Exception SomeBotanException - -toBotanException :: Exception e => e -> SomeException -toBotanException = toException . SomeBotanException - -fromBotanException :: Exception e => SomeException -> Maybe e -fromBotanException x = do - SomeBotanException a <- fromException x - cast a - -data InvalidVerifierException - = InvalidVerifierException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InvalidVerifierException where - toException = toBotanException - fromException = fromBotanException - -data InvalidInputException - = InvalidInputException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InvalidInputException where - toException = toBotanException - fromException = fromBotanException - -data BadMACException - = BadMACException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception BadMACException where - toException = toBotanException - fromException = fromBotanException - -data InsufficientBufferSpaceException - = InsufficientBufferSpaceException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InsufficientBufferSpaceException where - toException = toBotanException - fromException = fromBotanException - -data StringConversionException - = StringConversionException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception StringConversionException where - toException = toBotanException - fromException = fromBotanException - -data ExceptionThrownException - = ExceptionThrownException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception ExceptionThrownException where - toException = toBotanException - fromException = fromBotanException - -data OutOfMemoryException - = OutOfMemoryException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception OutOfMemoryException where - toException = toBotanException - fromException = fromBotanException - -data SystemErrorException - = SystemErrorException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception SystemErrorException where - toException = toBotanException - fromException = fromBotanException - -data InternalErrorException - = InternalErrorException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InternalErrorException where - toException = toBotanException - fromException = fromBotanException - -data BadFlagException - = BadFlagException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception BadFlagException where - toException = toBotanException - fromException = fromBotanException - -data NullPointerException - = NullPointerException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception NullPointerException where - toException = toBotanException - fromException = fromBotanException - -data BadParameterException - = BadParameterException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception BadParameterException where - toException = toBotanException - fromException = fromBotanException - -data KeyNotSetException - = KeyNotSetException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception KeyNotSetException where - toException = toBotanException - fromException = fromBotanException - -data InvalidKeyLengthException - = InvalidKeyLengthException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InvalidKeyLengthException where - toException = toBotanException - fromException = fromBotanException - -data InvalidObjectStateException - = InvalidObjectStateException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InvalidObjectStateException where - toException = toBotanException - fromException = fromBotanException - -data NotImplementedException - = NotImplementedException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception NotImplementedException where - toException = toBotanException - fromException = fromBotanException - -data InvalidObjectException - = InvalidObjectException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception InvalidObjectException where - toException = toBotanException - fromException = fromBotanException - -data UnknownException - = UnknownException BotanErrorCode ErrorMessage CallStack - deriving stock (Show) - -instance Exception UnknownException where - toException = toBotanException - fromException = fromBotanException - -{------------------------------------------------------------------------------- - Exceptions: throwing and catching --------------------------------------------------------------------------------} - -throwBotanError :: HasCallStack => BotanErrorCode -> IO a -throwBotanError r = throwBotanErrorWithCallstack r callStack - -throwBotanIfNegative :: HasCallStack => IO BotanErrorCode -> IO BotanErrorCode -throwBotanIfNegative act = do - e <- act - when (e < 0) $ throwBotanErrorWithCallstack e callStack - return e - -throwBotanIfNegative_ :: HasCallStack => IO BotanErrorCode -> IO () -throwBotanIfNegative_ act = do - e <- act - when (e < 0) $ throwBotanErrorWithCallstack e callStack - --- TODO: Rename to throwBotanCatchingInvalidIdentifier, add new --- throwBotanCatchingSuccess. See issue #46. --- --- NOTE: Catches 0 / Success as True and 1 / InvalidIdentifier as False, throws --- all other values -throwBotanCatchingSuccess :: HasCallStack => IO BotanErrorCode -> IO Bool -throwBotanCatchingSuccess act = do - result <- act - case result of - BOTAN_FFI_SUCCESS -> return True - BOTAN_FFI_INVALID_VERIFIER -> return False - _ -> throwBotanErrorWithCallstack result callStack - --- NOTE: Catches 1 as True and 0 as False, throws all other values -throwBotanCatchingBool :: HasCallStack => IO BotanErrorCode -> IO Bool -throwBotanCatchingBool act = do - result <- act - case result of - 0 -> return False - 1 -> return True - _ -> throwBotanErrorWithCallstack result callStack - --- TODO: remove throwBotanCatchingInt. See issue #60. --- --- NOTE: Catches positive numbers including zero, throws all other values --- Equivalent to fromIntegral . throwBotanIfNegative -throwBotanCatchingInt :: HasCallStack => IO BotanErrorCode -> IO Int -throwBotanCatchingInt act = do - result <- act - when (result < 0) $ throwBotanErrorWithCallstack result callStack - return (fromIntegral result) - -throwBotanErrorWithCallstack :: BotanErrorCode -> CallStack -> IO a -throwBotanErrorWithCallstack e cs = do - emsg <- botanErrorLastExceptionMessage - case e of - -- Note: we do not include a case for @BOTAN_FFI_SUCCESS@ since it - -- signals that the function call was successful. - BOTAN_FFI_INVALID_VERIFIER -> throwIO $ InvalidVerifierException e emsg cs - BOTAN_FFI_ERROR_INVALID_INPUT -> throwIO $ InvalidInputException e emsg cs - BOTAN_FFI_ERROR_BAD_MAC -> throwIO $ BadMACException e emsg cs - BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE -> throwIO $ InsufficientBufferSpaceException e emsg cs - BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR -> throwIO $ StringConversionException e emsg cs - BOTAN_FFI_ERROR_EXCEPTION_THROWN -> throwIO $ ExceptionThrownException e emsg cs - BOTAN_FFI_ERROR_OUT_OF_MEMORY -> throwIO $ OutOfMemoryException e emsg cs - BOTAN_FFI_ERROR_SYSTEM_ERROR -> throwIO $ SystemErrorException e emsg cs - BOTAN_FFI_ERROR_INTERNAL_ERROR -> throwIO $ InternalErrorException e emsg cs - BOTAN_FFI_ERROR_BAD_FLAG -> throwIO $ BadFlagException e emsg cs - BOTAN_FFI_ERROR_NULL_POINTER -> throwIO $ NullPointerException e emsg cs - BOTAN_FFI_ERROR_BAD_PARAMETER -> throwIO $ BadParameterException e emsg cs - BOTAN_FFI_ERROR_KEY_NOT_SET -> throwIO $ KeyNotSetException e emsg cs - BOTAN_FFI_ERROR_INVALID_KEY_LENGTH -> throwIO $ InvalidKeyLengthException e emsg cs - BOTAN_FFI_ERROR_INVALID_OBJECT_STATE -> throwIO $ InvalidObjectStateException e emsg cs - BOTAN_FFI_ERROR_NOT_IMPLEMENTED -> throwIO $ NotImplementedException e emsg cs - BOTAN_FFI_ERROR_INVALID_OBJECT -> throwIO $ InvalidObjectException e emsg cs - _ -> throwIO $ UnknownException e emsg cs - -tryBotan :: IO a -> IO (Either SomeBotanException a) -tryBotan = try - -catchBotan :: IO a -> (SomeBotanException -> IO a) -> IO a -catchBotan = catch - -handleBotan :: (SomeBotanException -> IO a) -> IO a -> IO a -handleBotan = flip catch +import qualified Botan.Low.Error.Internal as Internal diff --git a/botan-low/src/Botan/Low/Error/Internal.hs b/botan-low/src/Botan/Low/Error/Internal.hs new file mode 100644 index 00000000..263d3e12 --- /dev/null +++ b/botan-low/src/Botan/Low/Error/Internal.hs @@ -0,0 +1,283 @@ +{-| +Module : Botan.Low.Error +Description : Error codes and exception handling +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +{-# LANGUAGE DerivingVia #-} + +module Botan.Low.Error.Internal ( + -- * Error codes + BotanErrorCode + , botanErrorDescription + , BotanErrorMessage(..) + , botanErrorLastExceptionMessage + -- * Exception hierarchy + , SomeBotanException(..) + , toBotanException + , fromBotanException + -- ** Individual exceptions + , InvalidInputException(..) + , BadMACException(..) + , InsufficientBufferSpaceException(..) + , StringConversionException(..) + , ExceptionThrownException(..) + , OutOfMemoryException(..) + , SystemErrorException(..) + , InternalErrorException(..) + , BadFlagException(..) + , NullPointerException(..) + , BadParameterException(..) + , KeyNotSetException(..) + , InvalidKeyLengthException(..) + , InvalidObjectStateException(..) + , NotImplementedException(..) + , InvalidObjectException(..) + , UnknownException(..) + -- ** Throwing and catching + , throwBotanError + , throwBotanIfNegative + , throwBotanIfNegative_ + , throwBotanCatchingSuccess + , throwBotanCatchingBool + , throwBotanCatchingInt + , throwBotanErrorWithCallstack + ) where + +import Botan.Bindings.Error +import Botan.Low.Prelude (peekCString) +import Control.Exception +import Control.Monad +import Data.ByteString (ByteString) +import Data.Typeable +import Foreign.C.Types +import GHC.Stack +import HsBindgen.Runtime.CEnum +import HsBindgen.Runtime.ConstPtr (ConstPtr (..)) +import Prelude + +{------------------------------------------------------------------------------- + Errors +-------------------------------------------------------------------------------} + +newtype BotanErrorCode = BotanErrorCode CInt + deriving stock (Show, Eq) + +-- | Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. +botanErrorDescription :: BotanErrorCode -> IO ByteString +botanErrorDescription (BotanErrorCode e) = do + descPtr <- botan_error_description e + peekCString (unConstPtr descPtr) + +newtype BotanErrorMessage = BotanErrorMessage ByteString + deriving newtype Show + +-- | Returns a static string stored in a thread local variable which contains the last exception message thrown. +-- WARNING: This string buffer is overwritten on the next call to the FFI layer +botanErrorLastExceptionMessage :: IO BotanErrorMessage +botanErrorLastExceptionMessage = do + msgPtr <- botan_error_last_exception_message + BotanErrorMessage <$> peekCString (unConstPtr msgPtr) + +{------------------------------------------------------------------------------- + Exception hierarchy +-------------------------------------------------------------------------------} + +-- | The SomeBotanException type is the root of the botan exception type hierarchy. +data SomeBotanException = forall e . Exception e => SomeBotanException e + +instance Show SomeBotanException where + show (SomeBotanException e) = show e + +instance Exception SomeBotanException + +toBotanException :: Exception e => e -> SomeException +toBotanException = toException . SomeBotanException + +fromBotanException :: Exception e => SomeException -> Maybe e +fromBotanException x = do + SomeBotanException a <- fromException x + cast a + +newtype ViaSomeBotanException e = ViaSomeBotanException e + deriving stock Show + +instance (Show e, Typeable e) => Exception (ViaSomeBotanException e) where + toException = toBotanException + fromException = fromBotanException + +{------------------------------------------------------------------------------- + Individual exceptions +-------------------------------------------------------------------------------} + +data InvalidVerifierException + = InvalidVerifierException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InvalidVerifierException + +data InvalidInputException + = InvalidInputException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InvalidInputException + +data BadMACException + = BadMACException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException BadMACException + +data InsufficientBufferSpaceException + = InsufficientBufferSpaceException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InsufficientBufferSpaceException + +data StringConversionException + = StringConversionException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException StringConversionException + +data ExceptionThrownException + = ExceptionThrownException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException ExceptionThrownException + +data OutOfMemoryException + = OutOfMemoryException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException OutOfMemoryException + +data SystemErrorException + = SystemErrorException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException SystemErrorException + +data InternalErrorException + = InternalErrorException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InternalErrorException + +data BadFlagException + = BadFlagException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException BadFlagException + +data NullPointerException + = NullPointerException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException NullPointerException + +data BadParameterException + = BadParameterException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException BadParameterException + +data KeyNotSetException + = KeyNotSetException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException KeyNotSetException + +data InvalidKeyLengthException + = InvalidKeyLengthException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InvalidKeyLengthException + +data InvalidObjectStateException + = InvalidObjectStateException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InvalidObjectStateException + +data NotImplementedException + = NotImplementedException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException NotImplementedException + +data InvalidObjectException + = InvalidObjectException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException InvalidObjectException + +data UnknownException + = UnknownException BotanErrorCode BotanErrorMessage CallStack + deriving stock (Show) + deriving Exception via ViaSomeBotanException UnknownException + +{------------------------------------------------------------------------------- + Exceptions: throwing and catching +-------------------------------------------------------------------------------} + +throwBotanError :: HasCallStack => CInt -> IO a +throwBotanError r = throwBotanErrorWithCallstack r callStack + +throwBotanIfNegative :: HasCallStack => IO CInt -> IO CInt +throwBotanIfNegative act = do + e <- act + when (e < 0) $ throwBotanErrorWithCallstack e callStack + return e + +throwBotanIfNegative_ :: HasCallStack => IO CInt -> IO () +throwBotanIfNegative_ act = do + e <- act + when (e < 0) $ throwBotanErrorWithCallstack e callStack + +-- TODO: Rename to throwBotanCatchingInvalidIdentifier, add new +-- throwBotanCatchingSuccess. See issue #46. +-- +-- NOTE: Catches 0 / Success as True and 1 / InvalidIdentifier as False, throws +-- all other values +throwBotanCatchingSuccess :: HasCallStack => IO CInt -> IO Bool +throwBotanCatchingSuccess act = do + result <- act + case toCEnum result of + BOTAN_FFI_SUCCESS -> return True + BOTAN_FFI_INVALID_VERIFIER -> return False + _ -> throwBotanErrorWithCallstack result callStack + +-- NOTE: Catches 1 as True and 0 as False, throws all other values +throwBotanCatchingBool :: HasCallStack => IO CInt -> IO Bool +throwBotanCatchingBool act = do + result <- act + case result of + 0 -> return False + 1 -> return True + _ -> throwBotanErrorWithCallstack result callStack + +-- TODO: remove throwBotanCatchingInt. See issue #60. +-- +-- NOTE: Catches positive numbers including zero, throws all other values +-- Equivalent to fromIntegral . throwBotanIfNegative +throwBotanCatchingInt :: HasCallStack => IO CInt -> IO Int +throwBotanCatchingInt act = do + result <- act + when (result < 0) $ throwBotanErrorWithCallstack result callStack + return (fromIntegral result) + +throwBotanErrorWithCallstack :: CInt -> CallStack -> IO a +throwBotanErrorWithCallstack e cs = do + emsg <- botanErrorLastExceptionMessage + case toCEnum e of + -- Note: we do not include a case for @BOTAN_FFI_SUCCESS@ since it + -- signals that the function call was successful. + BOTAN_FFI_INVALID_VERIFIER -> throwIO $ InvalidVerifierException bec emsg cs + BOTAN_FFI_ERROR_INVALID_INPUT -> throwIO $ InvalidInputException bec emsg cs + BOTAN_FFI_ERROR_BAD_MAC -> throwIO $ BadMACException bec emsg cs + BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE -> throwIO $ InsufficientBufferSpaceException bec emsg cs + BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR -> throwIO $ StringConversionException bec emsg cs + BOTAN_FFI_ERROR_EXCEPTION_THROWN -> throwIO $ ExceptionThrownException bec emsg cs + BOTAN_FFI_ERROR_OUT_OF_MEMORY -> throwIO $ OutOfMemoryException bec emsg cs + BOTAN_FFI_ERROR_SYSTEM_ERROR -> throwIO $ SystemErrorException bec emsg cs + BOTAN_FFI_ERROR_INTERNAL_ERROR -> throwIO $ InternalErrorException bec emsg cs + BOTAN_FFI_ERROR_BAD_FLAG -> throwIO $ BadFlagException bec emsg cs + BOTAN_FFI_ERROR_NULL_POINTER -> throwIO $ NullPointerException bec emsg cs + BOTAN_FFI_ERROR_BAD_PARAMETER -> throwIO $ BadParameterException bec emsg cs + BOTAN_FFI_ERROR_KEY_NOT_SET -> throwIO $ KeyNotSetException bec emsg cs + BOTAN_FFI_ERROR_INVALID_KEY_LENGTH -> throwIO $ InvalidKeyLengthException bec emsg cs + BOTAN_FFI_ERROR_INVALID_OBJECT_STATE -> throwIO $ InvalidObjectStateException bec emsg cs + BOTAN_FFI_ERROR_NOT_IMPLEMENTED -> throwIO $ NotImplementedException bec emsg cs + BOTAN_FFI_ERROR_INVALID_OBJECT -> throwIO $ InvalidObjectException bec emsg cs + _ -> throwIO $ UnknownException bec emsg cs + where + bec = BotanErrorCode e diff --git a/botan-low/src/Botan/Low/FPE.hs b/botan-low/src/Botan/Low/FPE.hs index a03e1b89..798c9c67 100644 --- a/botan-low/src/Botan/Low/FPE.hs +++ b/botan-low/src/Botan/Low/FPE.hs @@ -37,8 +37,8 @@ module Botan.Low.FPE ( FPE(..) , FPEFlags - , pattern FPENone - , pattern FPEFE1CompatMode + , fPENone + , fPEFE1CompatMode , withFPE , fpeInitFE1 , fpeDestroy @@ -49,7 +49,8 @@ module Botan.Low.FPE ( import Botan.Bindings.FPE -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.MPI import Botan.Low.Prelude import Botan.Low.Remake @@ -69,24 +70,24 @@ import Botan.Low.Remake -- * Format Preserving Encryption -- */ -newtype FPE = MkFPE { getFPEForeignPtr :: ForeignPtr BotanFPEStruct } +newtype FPE = MkFPE { getFPEForeignPtr :: ForeignPtr Botan_fpe_struct } -withFPE :: FPE -> (BotanFPE -> IO a) -> IO a +withFPE :: FPE -> (Botan_fpe_t -> IO a) -> IO a fpeDestroy :: FPE -> IO () -createFPE :: (Ptr BotanFPE -> IO CInt) -> IO FPE +createFPE :: (Ptr Botan_fpe_t -> IO CInt) -> IO FPE (withFPE, fpeDestroy, createFPE) = mkBindings - MkBotanFPE runBotanFPE + Botan_fpe_t un_Botan_fpe_t MkFPE getFPEForeignPtr - botan_fpe_destroy + (Internal.funPtrIgnoreRetCode botan_fpe_destroy_ptr) type FPEFlags = Word32 -pattern FPENone - , FPEFE1CompatMode - :: FPEFlags -pattern FPENone = BOTAN_FPE_FLAG_NONE -pattern FPEFE1CompatMode = BOTAN_FPE_FLAG_FE1_COMPAT_MODE +fPENone :: FPEFlags +fPENone = 0 + +fPEFE1CompatMode :: FPEFlags +fPEFE1CompatMode = fromIntegral bOTAN_FPE_FLAG_FE1_COMPAT_MODE -- | Initialize a FE1 FPE context fpeInitFE1 diff --git a/botan-low/src/Botan/Low/HOTP.hs b/botan-low/src/Botan/Low/HOTP.hs index 78adbff5..b4325db0 100644 --- a/botan-low/src/Botan/Low/HOTP.hs +++ b/botan-low/src/Botan/Low/HOTP.hs @@ -49,9 +49,9 @@ module Botan.Low.HOTP ( ) where import Botan.Bindings.HOTP +import Botan.Low.Error.Internal import Botan.Low.Hash - -import Botan.Low.Error +import qualified Botan.Low.Internal as Internal import Botan.Low.Prelude import Botan.Low.Remake @@ -158,16 +158,16 @@ The user should then be notified. -} -newtype HOTP = MkHOTP { getHOTPForeignPtr :: ForeignPtr BotanHOTPStruct } +newtype HOTP = MkHOTP { getHOTPForeignPtr :: ForeignPtr Botan_hotp_struct } -withHOTP :: HOTP -> (BotanHOTP -> IO a) -> IO a +withHOTP :: HOTP -> (Botan_hotp_t -> IO a) -> IO a hotpDestroy :: HOTP -> IO () -createHOTP :: (Ptr BotanHOTP -> IO CInt) -> IO HOTP +createHOTP :: (Ptr Botan_hotp_t -> IO CInt) -> IO HOTP (withHOTP, hotpDestroy, createHOTP) = mkBindings - MkBotanHOTP runBotanHOTP + Botan_hotp_t un_Botan_hotp_t MkHOTP getHOTPForeignPtr - botan_hotp_destroy + (Internal.funPtrIgnoreRetCode botan_hotp_destroy_ptr) type HOTPHashName = HashName diff --git a/botan-low/src/Botan/Low/Hash.hs b/botan-low/src/Botan/Low/Hash.hs index 457a5bc5..990463e7 100644 --- a/botan-low/src/Botan/Low/Hash.hs +++ b/botan-low/src/Botan/Low/Hash.hs @@ -94,7 +94,8 @@ module Botan.Low.Hash ( import Botan.Bindings.Hash -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.Remake @@ -133,16 +134,16 @@ You can clear a hash's state, leaving it ready for reuse: -} -newtype Hash = MkHash { getHashForeignPtr :: ForeignPtr BotanHashStruct } +newtype Hash = MkHash { getHashForeignPtr :: ForeignPtr Botan_hash_struct } -withHash :: Hash -> (BotanHash -> IO a) -> IO a +withHash :: Hash -> (Botan_hash_t -> IO a) -> IO a hashDestroy :: Hash -> IO () -createHash :: (Ptr BotanHash -> IO CInt) -> IO Hash +createHash :: (Ptr Botan_hash_t -> IO CInt) -> IO Hash (withHash, hashDestroy, createHash) = mkBindings - MkBotanHash runBotanHash + Botan_hash_t un_Botan_hash_t MkHash getHashForeignPtr - botan_hash_destroy + (Internal.funPtrIgnoreRetCode botan_hash_destroy_ptr) type HashName = ByteString diff --git a/botan-low/src/Botan/Low/Internal.hs b/botan-low/src/Botan/Low/Internal.hs new file mode 100644 index 00000000..e9324e13 --- /dev/null +++ b/botan-low/src/Botan/Low/Internal.hs @@ -0,0 +1,25 @@ +{-| +Module : Botan.Low.Internal +Description : Internal utilities +Copyright : (c) 2023-2024, Apotheca Labs + (c) 2024-2025, Haskell Foundation +License : BSD-3-Clause +Maintainer : joris@well-typed.com, leo@apotheca.io +Stability : experimental +Portability : POSIX +-} + +module Botan.Low.Internal ( + funPtrIgnoreRetCode + ) where + +import Data.Coerce (Coercible, coerce) +import Foreign.C.Types +import Foreign.ForeignPtr +import Foreign.Ptr +import Prelude + +funPtrIgnoreRetCode :: forall a b. Coercible a (Ptr b) => FunPtr (a -> IO CInt) -> FinalizerPtr b +funPtrIgnoreRetCode = coerce + where + _unused = coerce @a @(Ptr b) diff --git a/botan-low/src/Botan/Low/KDF.hs b/botan-low/src/Botan/Low/KDF.hs index 79b86bc1..3a635244 100644 --- a/botan-low/src/Botan/Low/KDF.hs +++ b/botan-low/src/Botan/Low/KDF.hs @@ -71,7 +71,7 @@ module Botan.Low.KDF ( import Botan.Bindings.KDF -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Hash import Botan.Low.MAC import Botan.Low.Prelude diff --git a/botan-low/src/Botan/Low/MAC.hs b/botan-low/src/Botan/Low/MAC.hs index 7d0914da..c085601c 100644 --- a/botan-low/src/Botan/Low/MAC.hs +++ b/botan-low/src/Botan/Low/MAC.hs @@ -80,7 +80,8 @@ module Botan.Low.MAC ( import Botan.Bindings.MAC import Botan.Low.BlockCipher -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.Remake @@ -156,16 +157,16 @@ If you must use GMAC, a nonce needs to be set: -- * Message Authentication type -- */ -newtype MAC = MkMAC { getMACForeignPtr :: ForeignPtr BotanMACStruct } +newtype MAC = MkMAC { getMACForeignPtr :: ForeignPtr Botan_mac_struct } -withMAC :: MAC -> (BotanMAC -> IO a) -> IO a +withMAC :: MAC -> (Botan_mac_t -> IO a) -> IO a macDestroy :: MAC -> IO () -createMAC :: (Ptr BotanMAC -> IO CInt) -> IO MAC +createMAC :: (Ptr Botan_mac_t -> IO CInt) -> IO MAC (withMAC, macDestroy, createMAC) = mkBindings - MkBotanMAC runBotanMAC + Botan_mac_t un_Botan_mac_t MkMAC getMACForeignPtr - botan_mac_destroy + (Internal.funPtrIgnoreRetCode botan_mac_destroy_ptr) type MACName = ByteString diff --git a/botan-low/src/Botan/Low/MPI.hs b/botan-low/src/Botan/Low/MPI.hs index 466fe6ec..f99e899e 100644 --- a/botan-low/src/Botan/Low/MPI.hs +++ b/botan-low/src/Botan/Low/MPI.hs @@ -60,7 +60,8 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.MPI -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.Remake @@ -79,16 +80,16 @@ import Botan.Low.RNG -- NOTE: This whole module is not idiomatic - some methods mutate, some have a destination argument -- It will need furter wrapping. -newtype MP = MkMP { getMPForeignPtr :: ForeignPtr BotanMPStruct } +newtype MP = MkMP { getMPForeignPtr :: ForeignPtr Botan_mp_struct } -withMP :: MP -> (BotanMP -> IO a) -> IO a +withMP :: MP -> (Botan_mp_t -> IO a) -> IO a mpDestroy :: MP -> IO () -createMP :: (Ptr BotanMP -> IO CInt) -> IO MP +createMP :: (Ptr Botan_mp_t -> IO CInt) -> IO MP (withMP, mpDestroy, createMP) = mkBindings - MkBotanMP runBotanMP + Botan_mp_t un_Botan_mp_t MkMP getMPForeignPtr - botan_mp_destroy + (Internal.funPtrIgnoreRetCode botan_mp_destroy_ptr) mpInit :: IO MP -- mpInit = mkInit MkMP botan_mp_init botan_mp_destroy @@ -259,7 +260,7 @@ mpClearBit = mkSetCSize withMP botan_mp_clear_bit -- -- int botan_...(botan_mp_t dest, const botan_mp_t source); -type UnaryOp ptr = ptr -> ptr -> IO BotanErrorCode +type UnaryOp ptr = ptr -> ptr -> IO CInt mkUnaryOp :: WithPtr typ ptr -> UnaryOp ptr -> typ -> typ -> IO () mkUnaryOp withPtr unary dest source = withPtr dest $ \ destPtr -> do @@ -267,7 +268,7 @@ mkUnaryOp withPtr unary dest source = withPtr dest $ \ destPtr -> do throwBotanIfNegative_ $ unary destPtr sourcePtr -- int botan_...(botan_mp_t dest, const botan_mp_t source, size_t factor); -type UnaryOp_csize ptr = ptr -> ptr -> CSize -> IO BotanErrorCode +type UnaryOp_csize ptr = ptr -> ptr -> CSize -> IO CInt mkUnaryOp_csize :: WithPtr typ ptr -> UnaryOp_csize ptr -> typ -> typ -> Int -> IO () mkUnaryOp_csize withPtr unary dest source factor = withPtr dest $ \ destPtr -> do @@ -275,7 +276,7 @@ mkUnaryOp_csize withPtr unary dest source factor = withPtr dest $ \ destPtr -> throwBotanIfNegative_ $ unary destPtr sourcePtr (fromIntegral factor) -- int botan_...(botan_mp_t dest, const botan_mp_t a, const botan_mp_t b); -type BinaryOp ptr = ptr -> ptr -> ptr -> IO BotanErrorCode +type BinaryOp ptr = ptr -> ptr -> ptr -> IO CInt mkBinaryOp :: WithPtr typ ptr -> BinaryOp ptr -> typ -> typ -> typ -> IO () mkBinaryOp withPtr binary dest a b = withPtr dest $ \ destPtr -> do @@ -284,7 +285,7 @@ mkBinaryOp withPtr binary dest a b = withPtr dest $ \ destPtr -> do throwBotanIfNegative_ $ binary destPtr aPtr bPtr -- int botan_...(botan_mp_t a, botan_mp_t b, const botan_mp_t x, const botan_mp_t y); -type BinaryDuplexOp ptr = ptr -> ptr -> ptr -> ptr -> IO BotanErrorCode +type BinaryDuplexOp ptr = ptr -> ptr -> ptr -> ptr -> IO CInt -- NOTE: Do not confuse for mkTrinaryOp mkBinaryDuplexOp :: WithPtr typ ptr -> BinaryDuplexOp ptr -> typ -> typ -> typ -> typ -> IO () @@ -295,7 +296,7 @@ mkBinaryDuplexOp withPtr binary a b x y = withPtr a $ \ aPtr -> do throwBotanIfNegative_ $ binary aPtr bPtr xPtr yPtr -- int botan_...(botan_mp_t a, botan_mp_t b, const botan_mp_t x, const botan_mp_t y); -type TrinaryOp ptr = ptr -> ptr -> ptr -> ptr -> IO BotanErrorCode +type TrinaryOp ptr = ptr -> ptr -> ptr -> ptr -> IO CInt -- NOTE: Do not confuse for mkBinaryDuplexOp mkTrinaryOp :: WithPtr typ ptr -> TrinaryOp ptr -> typ -> typ -> typ -> typ -> IO () diff --git a/botan-low/src/Botan/Low/Make.hs b/botan-low/src/Botan/Low/Make.hs index 50593d28..7b33f8b5 100644 --- a/botan-low/src/Botan/Low/Make.hs +++ b/botan-low/src/Botan/Low/Make.hs @@ -66,8 +66,11 @@ module Botan.Low.Make ( import qualified Data.ByteString as ByteString -import Botan.Low.Error +import Botan.Bindings.Error + (pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE) +import Botan.Low.Error.Internal import Botan.Low.Prelude hiding (init) +import HsBindgen.Runtime.CEnum (CEnum (toCEnum)) {- Basic botan type template @@ -109,7 +112,7 @@ Initializers and destroyers {- type Construct struct typ = ForeignPtr struct -> typ type Destruct struct = FinalizerPtr struct -type Initialize0 struct = Ptr (Ptr struct) -> IO BotanErrorCode +type Initialize0 struct = Ptr (Ptr struct) -> IO CInt mkInit0 :: Construct struct typ @@ -157,11 +160,11 @@ mkFoo a b c = withA a $ \ a' -> do type Constr struct typ = ForeignPtr struct -> typ -type Initializer struct = Ptr (Ptr struct) -> IO BotanErrorCode -type Initializer_name struct = Ptr (Ptr struct) -> CString -> IO BotanErrorCode -type Initializer_name_flags struct = Ptr (Ptr struct) -> CString -> Word32 -> IO BotanErrorCode -type Initializer_bytes struct = Ptr (Ptr struct) -> Ptr Word8 -> IO BotanErrorCode -type Initializer_bytes_len struct = Ptr (Ptr struct) -> Ptr Word8 -> CSize -> IO BotanErrorCode +type Initializer struct = Ptr (Ptr struct) -> IO CInt +type Initializer_name struct = Ptr (Ptr struct) -> CString -> IO CInt +type Initializer_name_flags struct = Ptr (Ptr struct) -> CString -> Word32 -> IO CInt +type Initializer_bytes struct = Ptr (Ptr struct) -> Ptr Word8 -> IO CInt +type Initializer_bytes_len struct = Ptr (Ptr struct) -> Ptr Word8 -> CSize -> IO CInt type Destructor struct = FinalizerPtr struct @@ -233,7 +236,7 @@ mkInit_bytes_len constr init destroy bytes = do -- Initializing with another botan object -- TODO: Use this in already-implemented functions as appropriate -type Initializer_with struct withptr = Ptr (Ptr struct) -> withptr -> IO BotanErrorCode +type Initializer_with struct withptr = Ptr (Ptr struct) -> withptr -> IO CInt mkInit_with :: Constr struct typ @@ -252,7 +255,7 @@ mkInit_with constr init destroy withTypPtr typ = alloca $ \ outPtr -> do Non-effectful queries -} --- type GetName ptr = ptr -> Ptr CChar -> Ptr CSize -> IO BotanErrorCode +-- type GetName ptr = ptr -> Ptr CChar -> Ptr CSize -> IO CInt -- Replaced by the new mkGetCString -- -- TODO: Prefer mkGetBytes / mkGetCString to mkGetName @@ -273,7 +276,7 @@ Non-effectful queries -- NOTE: This now handles both Ptr Word8 and Ptr CChar -- This reads the entire byte buffer, including any \NUL bytes -type GetBytes ptr byte = ptr -> Ptr byte -> Ptr CSize -> IO BotanErrorCode +type GetBytes ptr byte = ptr -> Ptr byte -> Ptr CSize -> IO CInt mkGetBytes :: WithPtr typ ptr @@ -283,7 +286,7 @@ mkGetBytes withPtr get typ = withPtr typ $ \ typPtr -> do allocBytesQuerying $ \ outPtr outLen -> get typPtr outPtr outLen -- NOTE This reads a CString, up to the first \NUL -type GetCString ptr byte = ptr -> Ptr byte -> Ptr CSize -> IO BotanErrorCode +type GetCString ptr byte = ptr -> Ptr byte -> Ptr CSize -> IO CInt mkGetCString :: WithPtr typ ptr @@ -292,7 +295,7 @@ mkGetCString mkGetCString withPtr get typ = withPtr typ $ \ typPtr -> do allocBytesQueryingCString $ \ outPtr outLen -> get typPtr outPtr outLen -type GetInt ptr = ptr -> Ptr CInt -> IO BotanErrorCode +type GetInt ptr = ptr -> Ptr CInt -> IO CInt mkGetInt :: WithPtr typ ptr @@ -303,10 +306,10 @@ mkGetInt withPtr get typ = withPtr typ $ \ typPtr -> do throwBotanIfNegative_ $ get typPtr szPtr fromIntegral <$> peek szPtr -type GetSize ptr = ptr -> Ptr CSize -> IO BotanErrorCode -type GetSize_csize ptr = ptr -> CSize -> Ptr CSize -> IO BotanErrorCode -type GetSizes2 ptr = ptr -> Ptr CSize -> Ptr CSize -> IO BotanErrorCode -type GetSizes3 ptr = ptr -> Ptr CSize -> Ptr CSize -> Ptr CSize -> IO BotanErrorCode +type GetSize ptr = ptr -> Ptr CSize -> IO CInt +type GetSize_csize ptr = ptr -> CSize -> Ptr CSize -> IO CInt +type GetSizes2 ptr = ptr -> Ptr CSize -> Ptr CSize -> IO CInt +type GetSizes3 ptr = ptr -> Ptr CSize -> Ptr CSize -> Ptr CSize -> IO CInt mkGetSize :: WithPtr typ ptr @@ -349,15 +352,15 @@ mkGetSizes3 withPtr get typ = withPtr typ $ \ typPtr -> do szC <- fromIntegral <$> peek szPtrC return (szA,szB,szC) --- type GetBytes ptr = ptr -> Ptr Word8 -> CSize -> IO BotanErrorCode +-- type GetBytes ptr = ptr -> Ptr Word8 -> CSize -> IO CInt -- NOTE: Get...Code nomenclature signifies that we get the desired return value -- from the error code error code, eg they use something other than throwBotanIfNegative_ -- -type GetSuccessCode ptr = ptr -> IO BotanErrorCode -type GetSuccessCode_csize ptr = ptr -> CSize -> IO BotanErrorCode +type GetSuccessCode ptr = ptr -> IO CInt +type GetSuccessCode_csize ptr = ptr -> CSize -> IO CInt mkGetSuccessCode :: WithPtr typ ptr @@ -374,8 +377,8 @@ mkGetSuccessCode_csize withPtr get typ sz = withPtr typ $ \ typPtr -> do throwBotanCatchingSuccess $ get typPtr (fromIntegral sz) -type GetBoolCode ptr = ptr -> IO BotanErrorCode -type GetBoolCode_csize ptr = ptr -> CSize -> IO BotanErrorCode +type GetBoolCode ptr = ptr -> IO CInt +type GetBoolCode_csize ptr = ptr -> CSize -> IO CInt mkGetBoolCode :: WithPtr typ ptr @@ -391,8 +394,8 @@ mkGetBoolCode_csize mkGetBoolCode_csize withPtr get typ sz = withPtr typ $ \ typPtr -> do throwBotanCatchingBool $ get typPtr (fromIntegral sz) -type GetIntCode ptr = ptr -> IO BotanErrorCode -type GetIntCode_csize ptr = ptr -> CSize -> IO BotanErrorCode +type GetIntCode ptr = ptr -> IO CInt +type GetIntCode_csize ptr = ptr -> CSize -> IO CInt mkGetIntCode :: WithPtr typ ptr @@ -412,7 +415,7 @@ mkGetIntCode_csize withPtr get typ sz = withPtr typ $ \ typPtr -> do Effectful actions -} -type Action ptr = ptr -> IO BotanErrorCode +type Action ptr = ptr -> IO CInt mkAction :: WithPtr typ ptr -> Action ptr @@ -422,7 +425,7 @@ mkAction withPtr action typ = withPtr typ $ \ typPtr -> do mkSet :: WithPtr typ ptr - -> (ptr -> a -> IO BotanErrorCode) + -> (ptr -> a -> IO CInt) -> typ -> a -> IO () mkSet withPtr set typ a = withPtr typ $ \ typPtr -> do throwBotanIfNegative_ $ set typPtr a @@ -430,13 +433,13 @@ mkSet withPtr set typ a = withPtr typ $ \ typPtr -> do mkSetOn :: WithPtr typ ptr -> (a -> b) - -> (ptr -> b -> IO BotanErrorCode) + -> (ptr -> b -> IO CInt) -> typ -> a -> IO () mkSetOn withPtr fn set typ sz = withPtr typ $ \ typPtr -> do throwBotanIfNegative_ $ set typPtr (fn sz) -type SetCSize ptr = ptr -> CSize -> IO BotanErrorCode -type SetCInt ptr = ptr -> CInt -> IO BotanErrorCode +type SetCSize ptr = ptr -> CSize -> IO CInt +type SetCInt ptr = ptr -> CInt -> IO CInt mkSetCSize :: WithPtr typ ptr @@ -452,8 +455,8 @@ mkSetCInt mkSetCInt withPtr set typ sz = withPtr typ $ \ typPtr -> do throwBotanIfNegative_ $ set typPtr (fromIntegral sz) -type SetCString ptr = ptr -> CString -> IO BotanErrorCode -type SetCString_csize ptr = ptr -> CString -> CSize -> IO BotanErrorCode +type SetCString ptr = ptr -> CString -> IO CInt +type SetCString_csize ptr = ptr -> CString -> CSize -> IO CInt mkSetCString :: WithPtr typ ptr @@ -471,7 +474,7 @@ mkSetCString_csize withPtr set typ cstring sz = withPtr typ $ \ typPtr -> do asCString cstring $ \ cstringPtr -> do throwBotanIfNegative_ $ set typPtr cstringPtr (fromIntegral sz) -type SetBytesLen ptr = ptr -> Ptr Word8 -> CSize -> IO BotanErrorCode +type SetBytesLen ptr = ptr -> Ptr Word8 -> CSize -> IO CInt mkSetBytesLen :: WithPtr typ ptr @@ -487,20 +490,20 @@ mkSetBytesLen withPtr set typ bytes = withPtr typ $ \ typPtr -> do -- NOTE: This properly takes advantage of szPtr, queries the buffer size - use this elsewhere -- NOTE: This throws any botan codes other than BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE -allocBytesQuerying :: (Ptr byte -> Ptr CSize -> IO BotanErrorCode) -> IO ByteString +allocBytesQuerying :: (Ptr byte -> Ptr CSize -> IO CInt) -> IO ByteString allocBytesQuerying fn = do alloca $ \ szPtr -> do poke szPtr 0 code <- fn nullPtr szPtr - case code of - InsufficientBufferSpace -> do + case toCEnum code of + BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE -> do sz <- fromIntegral <$> peek szPtr allocBytes sz $ \ outPtr -> throwBotanIfNegative_ $ fn outPtr szPtr _ -> do throwBotanError code -- NOTE: Does not check length of taken string, vulnerable to null byte injection -allocBytesQueryingCString :: (Ptr byte -> Ptr CSize -> IO BotanErrorCode) -> IO ByteString +allocBytesQueryingCString :: (Ptr byte -> Ptr CSize -> IO CInt) -> IO ByteString allocBytesQueryingCString action = do cstring <- allocBytesQuerying action return $!! ByteString.takeWhile (/= 0) cstring diff --git a/botan-low/src/Botan/Low/Prelude.hs b/botan-low/src/Botan/Low/Prelude.hs index eaf1e4aa..6b9f7074 100644 --- a/botan-low/src/Botan/Low/Prelude.hs +++ b/botan-low/src/Botan/Low/Prelude.hs @@ -70,7 +70,7 @@ import Foreign.Storable import GHC.Stack -import Botan.Bindings.Prelude (ConstPtr (..)) +import HsBindgen.Runtime.ConstPtr (ConstPtr (..)) {- Small rant: CString is a bit of a mess diff --git a/botan-low/src/Botan/Low/PubKey.hs b/botan-low/src/Botan/Low/PubKey.hs index 632e81dc..ebae82c6 100644 --- a/botan-low/src/Botan/Low/PubKey.hs +++ b/botan-low/src/Botan/Low/PubKey.hs @@ -19,11 +19,11 @@ module Botan.Low.PubKey ( -- * Private keys PrivKey(..) , CheckKeyFlags - , pattern CheckKeyNormalTests - , pattern CheckKeyExpensiveTests + , checkKeyNormalTestsF + , checkKeyExpensiveTestsF , PrivKeyExportFlags - , pattern PrivKeyExportDER - , pattern PrivKeyExportPEM + , privKeyExportDERF + , privKeyExportPEMF , withPrivKey , privKeyCreate , privKeyLoad @@ -183,9 +183,10 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.MPI import Botan.Bindings.PubKey -import Botan.Bindings.RNG +import qualified Botan.Low.Internal as Internal -import Botan.Low.Error +import Botan.Bindings.RNG (Botan_rng_t (Botan_rng_t)) +import Botan.Low.Error.Internal import Botan.Low.Hash import Botan.Low.Make import Botan.Low.MPI @@ -275,16 +276,16 @@ Verify a message: -- * Public/private key creation, import, ... -- */ -newtype PrivKey = MkPrivKey { getPrivKeyForeignPtr :: ForeignPtr BotanPrivKeyStruct } +newtype PrivKey = MkPrivKey { getPrivKeyForeignPtr :: ForeignPtr Botan_privkey_struct } -withPrivKey :: PrivKey -> (BotanPrivKey -> IO a) -> IO a +withPrivKey :: PrivKey -> (Botan_privkey_t -> IO a) -> IO a privKeyDestroy :: PrivKey -> IO () -createPrivKey :: (Ptr BotanPrivKey -> IO CInt) -> IO PrivKey +createPrivKey :: (Ptr Botan_privkey_t -> IO CInt) -> IO PrivKey (withPrivKey, privKeyDestroy, createPrivKey) = mkBindings - MkBotanPrivKey runBotanPrivKey + Botan_privkey_t un_Botan_privkey_t MkPrivKey getPrivKeyForeignPtr - botan_privkey_destroy + (Internal.funPtrIgnoreRetCode botan_privkey_destroy_ptr) type PKName = ByteString @@ -549,11 +550,9 @@ privKeyCreate name params rng = asCString name $ \ namePtr -> do type CheckKeyFlags = Word32 -pattern CheckKeyNormalTests - , CheckKeyExpensiveTests - :: CheckKeyFlags -pattern CheckKeyNormalTests = BOTAN_CHECK_KEY_NORMAL_TESTS -pattern CheckKeyExpensiveTests = BOTAN_CHECK_KEY_EXPENSIVE_TESTS +checkKeyNormalTestsF, checkKeyExpensiveTestsF :: CheckKeyFlags +checkKeyNormalTestsF = 0 +checkKeyExpensiveTestsF = fromIntegral bOTAN_CHECK_KEY_EXPENSIVE_TESTS -- TODO: Probably catch -1 (INVALID_INPUT), return Bool -- | Check the validity of a private key @@ -587,19 +586,16 @@ privKeyLoad bits password = asBytesLen bits $ \ bitsPtr bitsLen -> do asCStringNullable password $ \ passwordPtr -> do createPrivKey $ \ out -> botan_privkey_load out - (MkBotanRNG nullPtr) + (Botan_rng_t nullPtr) (ConstPtr bitsPtr) bitsLen (ConstPtr passwordPtr) type PrivKeyExportFlags = Word32 -pattern PrivKeyExportDER - , PrivKeyExportPEM - :: PrivKeyExportFlags - -pattern PrivKeyExportDER = BOTAN_PRIVKEY_EXPORT_FLAG_DER -pattern PrivKeyExportPEM = BOTAN_PRIVKEY_EXPORT_FLAG_PEM +privKeyExportDERF, privKeyExportPEMF :: PrivKeyExportFlags +privKeyExportDERF = fromIntegral bOTAN_PRIVKEY_EXPORT_FLAG_DER +privKeyExportPEMF = fromIntegral bOTAN_PRIVKEY_EXPORT_FLAG_PEM -- NOTE: Different from allocBytesQuerying / INSUFFICIENT_BUFFER_SPACE {- | @@ -625,17 +621,17 @@ privKeyExport sk flags = withPrivKey sk $ \ skPtr -> do -- TODO: -- View the private key's DER encoding -- privKeyViewDER --- :: BotanPrivKey -- ^ __key__ --- -> BotanViewContext ctx -- ^ __ctx__ --- -> FunPtr (BotanViewBinCallback ctx) -- ^ __view__ +-- :: Botan_privkey_t -- ^ __key__ +-- -> Botan_view_ctx -- ^ __ctx__ +-- -> FunPtr (Botan_view_bin_fn) -- ^ __view__ -- -> IO CInt -- TODO: -- View the private key's PEM encoding -- privKeyViewPEM --- :: BotanPrivKey -- ^ __key__ --- -> BotanViewContext ctx -- ^ __ctx__ --- -> FunPtr (BotanViewStrCallback ctx) -- ^ __view__ +-- :: Botan_privkey_t -- ^ __key__ +-- -> Botan_view_ctx -- ^ __ctx__ +-- -> FunPtr (Botan_view_str_fn ctx) -- ^ __view__ -- -> IO CInt privKeyAlgoName @@ -667,16 +663,16 @@ privKeyAlgoName = mkGetCString withPrivKey botan_privkey_algo_name -- -> IO ByteString -- privKeyExportEncryptedPBKDFIter = undefined -newtype PubKey = MkPubKey { getPubKeyForeignPtr :: ForeignPtr BotanPubKeyStruct } +newtype PubKey = MkPubKey { getPubKeyForeignPtr :: ForeignPtr Botan_pubkey_struct } -withPubKey :: PubKey -> (BotanPubKey -> IO a) -> IO a +withPubKey :: PubKey -> (Botan_pubkey_t -> IO a) -> IO a pubKeyDestroy :: PubKey -> IO () -createPubKey :: (Ptr BotanPubKey -> IO CInt) -> IO PubKey +createPubKey :: (Ptr Botan_pubkey_t -> IO CInt) -> IO PubKey (withPubKey, pubKeyDestroy, createPubKey) = mkBindings - MkBotanPubKey runBotanPubKey + Botan_pubkey_t un_Botan_pubkey_t MkPubKey getPubKeyForeignPtr - botan_pubkey_destroy + (Internal.funPtrIgnoreRetCode botan_pubkey_destroy_ptr) pubKeyLoad :: ByteString -- ^ __bits[]__ @@ -770,14 +766,14 @@ privKeyGetField mp sk field = withMP mp $ \ mpPtr -> do -- Helpers mkPrivKeyLoad1_name - :: (Ptr BotanPrivKey -> BotanMP -> ConstPtr CChar -> IO BotanErrorCode) + :: (Ptr Botan_privkey_t -> Botan_mp_t -> ConstPtr CChar -> IO CInt) -> MP -> ByteString -> IO PrivKey mkPrivKeyLoad1_name load a name = withMP a $ \ aPtr -> do asCString name $ \ namePtr -> do createPrivKey $ \ out -> load out aPtr (ConstPtr namePtr) mkPrivKeyLoad3 - :: (Ptr BotanPrivKey -> BotanMP -> BotanMP -> BotanMP -> IO BotanErrorCode) + :: (Ptr Botan_privkey_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO CInt) -> MP -> MP -> MP -> IO PrivKey mkPrivKeyLoad3 load a b c = withMany withMP [a,b,c] $ \case [aPtr,bPtr,cPtr] -> do @@ -785,7 +781,7 @@ mkPrivKeyLoad3 load a b c = withMany withMP [a,b,c] $ \case _ -> error "mkPrivKeyLoad3: impossible" mkPrivKeyLoad4 - :: (Ptr BotanPrivKey -> BotanMP -> BotanMP -> BotanMP -> BotanMP -> IO BotanErrorCode) + :: (Ptr Botan_privkey_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO CInt) -> MP -> MP -> MP -> MP -> IO PrivKey mkPrivKeyLoad4 load a b c d = withMany withMP [a,b,c,d] $ \case [aPtr,bPtr,cPtr,dPtr] -> do @@ -795,7 +791,7 @@ mkPrivKeyLoad4 load a b c d = withMany withMP [a,b,c,d] $ \case -- mkPubKeyLoad2 - :: (Ptr BotanPubKey -> BotanMP -> BotanMP -> IO BotanErrorCode) + :: (Ptr Botan_pubkey_t -> Botan_mp_t -> Botan_mp_t -> IO CInt) -> MP -> MP -> IO PubKey mkPubKeyLoad2 load a b = withMany withMP [a,b] $ \case [aPtr,bPtr] -> do @@ -803,7 +799,7 @@ mkPubKeyLoad2 load a b = withMany withMP [a,b] $ \case _ -> error "mkPubKeyLoad2: impossible" mkPubKeyLoad2_name - :: (Ptr BotanPubKey -> BotanMP -> BotanMP -> ConstPtr CChar -> IO BotanErrorCode) + :: (Ptr Botan_pubkey_t -> Botan_mp_t -> Botan_mp_t -> ConstPtr CChar -> IO CInt) -> MP -> MP -> ByteString -> IO PubKey mkPubKeyLoad2_name load x y name = withMany withMP [x,y] $ \case [xPtr,yPtr] -> do @@ -812,7 +808,7 @@ mkPubKeyLoad2_name load x y name = withMany withMP [x,y] $ \case _ -> error "mkPubKeyLoad2_name: impossible" mkPubKeyLoad3 - :: (Ptr BotanPubKey -> BotanMP -> BotanMP -> BotanMP -> IO BotanErrorCode) + :: (Ptr Botan_pubkey_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO CInt) -> MP -> MP -> MP -> IO PubKey mkPubKeyLoad3 load a b c = withMany withMP [a,b,c] $ \case [aPtr,bPtr,cPtr] -> do @@ -820,7 +816,7 @@ mkPubKeyLoad3 load a b c = withMany withMP [a,b,c] $ \case _ -> error "mkPubKeyLoad3: impossible" mkPubKeyLoad4 - :: (Ptr BotanPubKey -> BotanMP -> BotanMP -> BotanMP -> BotanMP -> IO BotanErrorCode) + :: (Ptr Botan_pubkey_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO CInt) -> MP -> MP -> MP -> MP -> IO PubKey mkPubKeyLoad4 load a b c d = withMany withMP [a,b,c,d] $ \case [aPtr,bPtr,cPtr,dPtr] -> do diff --git a/botan-low/src/Botan/Low/PubKey/Decrypt.hs b/botan-low/src/Botan/Low/PubKey/Decrypt.hs index e4dbd6c0..c19d1118 100644 --- a/botan-low/src/Botan/Low/PubKey/Decrypt.hs +++ b/botan-low/src/Botan/Low/PubKey/Decrypt.hs @@ -22,7 +22,8 @@ module Botan.Low.PubKey.Decrypt ( ) where import Botan.Bindings.PubKey.Decrypt -import Botan.Low.Error (throwBotanIfNegative_) +import Botan.Low.Error.Internal (throwBotanIfNegative_) +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.PubKey @@ -34,16 +35,16 @@ import qualified Data.ByteString.Internal as BSI -- * Public Key Decryption -- */ -newtype Decrypt = MkDecrypt { getDecryptForeignPtr :: ForeignPtr BotanPKOpDecryptStruct } +newtype Decrypt = MkDecrypt { getDecryptForeignPtr :: ForeignPtr Botan_pk_op_decrypt_struct } -withDecrypt :: Decrypt -> (BotanPKOpDecrypt -> IO a) -> IO a +withDecrypt :: Decrypt -> (Botan_pk_op_decrypt_t -> IO a) -> IO a decryptDestroy :: Decrypt -> IO () -createDecrypt :: (Ptr BotanPKOpDecrypt -> IO CInt) -> IO Decrypt +createDecrypt :: (Ptr Botan_pk_op_decrypt_t -> IO CInt) -> IO Decrypt (withDecrypt, decryptDestroy, createDecrypt) = mkBindings - MkBotanPKOpDecrypt runBotanPKOpDecrypt + Botan_pk_op_decrypt_t un_Botan_pk_op_decrypt_t MkDecrypt getDecryptForeignPtr - botan_pk_op_decrypt_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_decrypt_destroy_ptr) decryptCreate :: PrivKey -- ^ __key__ @@ -54,8 +55,8 @@ decryptCreate sk padding = withPrivKey sk $ \ skPtr -> do createDecrypt $ \ out -> botan_pk_op_decrypt_create out skPtr - paddingPtr - BOTAN_PUBKEY_DECRYPT_FLAGS_NONE + (ConstPtr paddingPtr) + 0 decryptOutputLength :: Decrypt -- ^ __op__ diff --git a/botan-low/src/Botan/Low/PubKey/Ed25519.hs b/botan-low/src/Botan/Low/PubKey/Ed25519.hs index dd77f4db..75c0999a 100644 --- a/botan-low/src/Botan/Low/PubKey/Ed25519.hs +++ b/botan-low/src/Botan/Low/PubKey/Ed25519.hs @@ -18,7 +18,7 @@ module Botan.Low.PubKey.Ed25519 ( import Botan.Bindings.PubKey.Ed25519 -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Prelude import Botan.Low.PubKey import Botan.Low.Remake diff --git a/botan-low/src/Botan/Low/PubKey/Encrypt.hs b/botan-low/src/Botan/Low/PubKey/Encrypt.hs index 5f34f24b..b5daf725 100644 --- a/botan-low/src/Botan/Low/PubKey/Encrypt.hs +++ b/botan-low/src/Botan/Low/PubKey/Encrypt.hs @@ -22,7 +22,8 @@ module Botan.Low.PubKey.Encrypt ( ) where import Botan.Bindings.PubKey.Encrypt -import Botan.Low.Error (throwBotanIfNegative_) +import Botan.Low.Error.Internal (throwBotanIfNegative_) +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.PubKey @@ -35,16 +36,16 @@ import qualified Data.ByteString.Internal as BSI -- * Public Key Encryption -- */ -newtype Encrypt = MkEncrypt { getEncryptForeignPtr :: ForeignPtr BotanPKOpEncryptStruct } +newtype Encrypt = MkEncrypt { getEncryptForeignPtr :: ForeignPtr Botan_pk_op_encrypt_struct } -withEncrypt :: Encrypt -> (BotanPKOpEncrypt -> IO a) -> IO a +withEncrypt :: Encrypt -> (Botan_pk_op_encrypt_t -> IO a) -> IO a encryptDestroy :: Encrypt -> IO () -createEncrypt :: (Ptr BotanPKOpEncrypt -> IO CInt) -> IO Encrypt +createEncrypt :: (Ptr Botan_pk_op_encrypt_t -> IO CInt) -> IO Encrypt (withEncrypt, encryptDestroy, createEncrypt) = mkBindings - MkBotanPKOpEncrypt runBotanPKOpEncrypt + Botan_pk_op_encrypt_t un_Botan_pk_op_encrypt_t MkEncrypt getEncryptForeignPtr - botan_pk_op_encrypt_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_encrypt_destroy_ptr) encryptCreate :: PubKey -- ^ __key__ @@ -83,6 +84,6 @@ encrypt enc rng ptext = botanRNG outPtr szPtr - ptextPtr + (ConstPtr ptextPtr) ptextLen fromIntegral <$> peek szPtr diff --git a/botan-low/src/Botan/Low/PubKey/KeyAgreement.hs b/botan-low/src/Botan/Low/PubKey/KeyAgreement.hs index 0267880b..cc35bf81 100644 --- a/botan-low/src/Botan/Low/PubKey/KeyAgreement.hs +++ b/botan-low/src/Botan/Low/PubKey/KeyAgreement.hs @@ -31,7 +31,8 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.PubKey.KeyAgreement -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.KDF import Botan.Low.Make import Botan.Low.Prelude @@ -110,16 +111,16 @@ agreed-upon salt: -} -newtype KeyAgreement = MkKeyAgreement { getKeyAgreementForeignPtr :: ForeignPtr BotanPKOpKeyAgreementStruct } +newtype KeyAgreement = MkKeyAgreement { getKeyAgreementForeignPtr :: ForeignPtr Botan_pk_op_ka_struct } -withKeyAgreement :: KeyAgreement -> (BotanPKOpKeyAgreement -> IO a) -> IO a +withKeyAgreement :: KeyAgreement -> (Botan_pk_op_ka_t -> IO a) -> IO a keyAgreementDestroy :: KeyAgreement -> IO () -createKeyAgreement :: (Ptr BotanPKOpKeyAgreement -> IO CInt) -> IO KeyAgreement +createKeyAgreement :: (Ptr Botan_pk_op_ka_t -> IO CInt) -> IO KeyAgreement (withKeyAgreement, keyAgreementDestroy, createKeyAgreement) = mkBindings - MkBotanPKOpKeyAgreement runBotanPKOpKeyAgreement + Botan_pk_op_ka_t un_Botan_pk_op_ka_t MkKeyAgreement getKeyAgreementForeignPtr - botan_pk_op_key_agreement_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_key_agreement_destroy_ptr) -- NOTE: Silently uses the system RNG keyAgreementCreate diff --git a/botan-low/src/Botan/Low/PubKey/KeyEncapsulation.hs b/botan-low/src/Botan/Low/PubKey/KeyEncapsulation.hs index f458549b..9dabd36b 100644 --- a/botan-low/src/Botan/Low/PubKey/KeyEncapsulation.hs +++ b/botan-low/src/Botan/Low/PubKey/KeyEncapsulation.hs @@ -41,7 +41,8 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.PubKey.KeyEncapsulation -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.KDF import Botan.Low.Make import Botan.Low.Prelude @@ -114,16 +115,16 @@ Then, this shared key may be used for any suitable purpose. type KEMSharedKey = ByteString type KEMEncapsulatedKey = ByteString -newtype KEMEncrypt = MkKEMEncrypt { getKEMEncryptForeignPtr :: ForeignPtr BotanPKOpKEMEncryptStruct } +newtype KEMEncrypt = MkKEMEncrypt { getKEMEncryptForeignPtr :: ForeignPtr Botan_pk_op_kem_encrypt_struct } -withKEMEncrypt :: KEMEncrypt -> (BotanPKOpKEMEncrypt -> IO a) -> IO a +withKEMEncrypt :: KEMEncrypt -> (Botan_pk_op_kem_encrypt_t -> IO a) -> IO a kemEncryptDestroy :: KEMEncrypt -> IO () -createKEMEncrypt :: (Ptr BotanPKOpKEMEncrypt -> IO CInt) -> IO KEMEncrypt +createKEMEncrypt :: (Ptr Botan_pk_op_kem_encrypt_t -> IO CInt) -> IO KEMEncrypt (withKEMEncrypt, kemEncryptDestroy, createKEMEncrypt) = mkBindings - MkBotanPKOpKEMEncrypt runBotanPKOpKEMEncrypt + Botan_pk_op_kem_encrypt_t un_Botan_pk_op_kem_encrypt_t MkKEMEncrypt getKEMEncryptForeignPtr - botan_pk_op_kem_encrypt_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_kem_encrypt_destroy_ptr) @@ -185,16 +186,16 @@ kemEncryptCreateSharedKey ke rng salt desiredLen = withKEMEncrypt ke $ \ kePtr - encapPtr encapSzPtr -newtype KEMDecrypt = MkKEMDecrypt { getKEMDecryptForeignPtr :: ForeignPtr BotanPKOpKEMDecryptStruct } +newtype KEMDecrypt = MkKEMDecrypt { getKEMDecryptForeignPtr :: ForeignPtr Botan_pk_op_kem_decrypt_struct } -withKEMDecrypt :: KEMDecrypt -> (BotanPKOpKEMDecrypt -> IO a) -> IO a +withKEMDecrypt :: KEMDecrypt -> (Botan_pk_op_kem_decrypt_t -> IO a) -> IO a kemDecryptDestroy :: KEMDecrypt -> IO () -createKEMDecrypt :: (Ptr BotanPKOpKEMDecrypt -> IO CInt) -> IO KEMDecrypt +createKEMDecrypt :: (Ptr Botan_pk_op_kem_decrypt_t -> IO CInt) -> IO KEMDecrypt (withKEMDecrypt, kemDecryptDestroy, createKEMDecrypt) = mkBindings - MkBotanPKOpKEMDecrypt runBotanPKOpKEMDecrypt + Botan_pk_op_kem_decrypt_t un_Botan_pk_op_kem_decrypt_t MkKEMDecrypt getKEMDecryptForeignPtr - botan_pk_op_kem_decrypt_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_kem_decrypt_destroy_ptr) kemDecryptCreate :: PrivKey -- ^ __key__ diff --git a/botan-low/src/Botan/Low/PubKey/Sign.hs b/botan-low/src/Botan/Low/PubKey/Sign.hs index 8eeed100..aadc4842 100644 --- a/botan-low/src/Botan/Low/PubKey/Sign.hs +++ b/botan-low/src/Botan/Low/PubKey/Sign.hs @@ -14,8 +14,8 @@ module Botan.Low.PubKey.Sign ( -- * Public key signatures Sign(..) , SigningFlags - , pattern StandardFormatSignature - , pattern DERFormatSignature + , standardFormatSignatureF + , dERFormatSignatureF , withSign , signCreate , signDestroy @@ -29,7 +29,8 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.PubKey.Sign -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.PubKey @@ -40,24 +41,22 @@ import Botan.Low.RNG -- * Signature Generation -- */ -newtype Sign = MkSign { getSignForeignPtr :: ForeignPtr BotanPKOpSignStruct } +newtype Sign = MkSign { getSignForeignPtr :: ForeignPtr Botan_pk_op_sign_struct } -withSign :: Sign -> (BotanPKOpSign -> IO a) -> IO a +withSign :: Sign -> (Botan_pk_op_sign_t -> IO a) -> IO a signDestroy :: Sign -> IO () -createSign :: (Ptr BotanPKOpSign -> IO CInt) -> IO Sign +createSign :: (Ptr Botan_pk_op_sign_t -> IO CInt) -> IO Sign (withSign, signDestroy, createSign) = mkBindings - MkBotanPKOpSign runBotanPKOpSign + Botan_pk_op_sign_t un_Botan_pk_op_sign_t MkSign getSignForeignPtr - botan_pk_op_sign_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_sign_destroy_ptr) type SigningFlags = Word32 -pattern StandardFormatSignature -- ^ Not an actual flags - , DERFormatSignature - :: SigningFlags -pattern StandardFormatSignature = BOTAN_PUBKEY_STD_FORMAT_SIGNATURE -pattern DERFormatSignature = BOTAN_PUBKEY_DER_FORMAT_SIGNATURE +standardFormatSignatureF, dERFormatSignatureF :: SigningFlags +standardFormatSignatureF = 0 +dERFormatSignatureF = fromIntegral bOTAN_PUBKEY_DER_FORMAT_SIGNATURE signCreate :: PrivKey -- ^ __key__ diff --git a/botan-low/src/Botan/Low/PubKey/Verify.hs b/botan-low/src/Botan/Low/PubKey/Verify.hs index 20633f6e..91d1b086 100644 --- a/botan-low/src/Botan/Low/PubKey/Verify.hs +++ b/botan-low/src/Botan/Low/PubKey/Verify.hs @@ -23,7 +23,8 @@ module Botan.Low.PubKey.Verify ( import Botan.Bindings.PubKey.Verify -import Botan.Low.Error +import Botan.Low.Error.Internal +import qualified Botan.Low.Internal as Internal import Botan.Low.Prelude import Botan.Low.PubKey import Botan.Low.PubKey.Sign (SigningFlags) @@ -33,16 +34,16 @@ import Botan.Low.Remake -- * Signature Verification -- */ -newtype Verify = MkVerify { getVerifyForeignPtr :: ForeignPtr BotanPKOpVerifyStruct } +newtype Verify = MkVerify { getVerifyForeignPtr :: ForeignPtr Botan_pk_op_verify_struct } -withVerify :: Verify -> (BotanPKOpVerify -> IO a) -> IO a +withVerify :: Verify -> (Botan_pk_op_verify_t -> IO a) -> IO a verifyDestroy :: Verify -> IO () -createVerify :: (Ptr BotanPKOpVerify -> IO CInt) -> IO Verify +createVerify :: (Ptr Botan_pk_op_verify_t -> IO CInt) -> IO Verify (withVerify, verifyDestroy, createVerify) = mkBindings - MkBotanPKOpVerify runBotanPKOpVerify + Botan_pk_op_verify_t un_Botan_pk_op_verify_t MkVerify getVerifyForeignPtr - botan_pk_op_verify_destroy + (Internal.funPtrIgnoreRetCode botan_pk_op_verify_destroy_ptr) verifyCreate :: PubKey -- ^ __key__ diff --git a/botan-low/src/Botan/Low/PubKey/X25519.hs b/botan-low/src/Botan/Low/PubKey/X25519.hs index dd30554e..a1bf1bb4 100644 --- a/botan-low/src/Botan/Low/PubKey/X25519.hs +++ b/botan-low/src/Botan/Low/PubKey/X25519.hs @@ -18,7 +18,7 @@ module Botan.Low.PubKey.X25519 ( import Botan.Bindings.PubKey.X25519 -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Prelude import Botan.Low.PubKey import Botan.Low.Remake diff --git a/botan-low/src/Botan/Low/PwdHash.hs b/botan-low/src/Botan/Low/PwdHash.hs index 452ee03c..b062180a 100644 --- a/botan-low/src/Botan/Low/PwdHash.hs +++ b/botan-low/src/Botan/Low/PwdHash.hs @@ -32,7 +32,7 @@ module Botan.Low.PwdHash ( import Botan.Bindings.PwdHash -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Hash import Botan.Low.Prelude diff --git a/botan-low/src/Botan/Low/RNG.hs b/botan-low/src/Botan/Low/RNG.hs index 684bc2d5..a2542326 100644 --- a/botan-low/src/Botan/Low/RNG.hs +++ b/botan-low/src/Botan/Low/RNG.hs @@ -41,7 +41,8 @@ module Botan.Low.RNG ( import Botan.Bindings.RNG -import Botan.Low.Error (throwBotanIfNegative_) +import Botan.Low.Error.Internal (throwBotanIfNegative_) +import qualified Botan.Low.Internal as Internal import Botan.Low.Prelude import Botan.Low.Remake @@ -86,14 +87,14 @@ You can also seed it with your own entropy; this is safe and can never -- NOTE: Uses ConstPtr / unConstPtr manually -- TODO: Take advantage of Remake / better peek / (peekConst or constPeek) functions -newtype RNG = MkRNG { getRNGForeignPtr :: ForeignPtr BotanRNGStruct } +newtype RNG = MkRNG { getRNGForeignPtr :: ForeignPtr Botan_rng_struct } -withRNG :: RNG -> (BotanRNG -> IO a) -> IO a +withRNG :: RNG -> (Botan_rng_t -> IO a) -> IO a -- | Destroy a random number generator object immediately rngDestroy :: RNG -> IO () -createRNG :: (Ptr BotanRNG -> IO CInt) -> IO RNG +createRNG :: (Ptr Botan_rng_t -> IO CInt) -> IO RNG (withRNG, rngDestroy, createRNG) - = mkBindings MkBotanRNG runBotanRNG MkRNG getRNGForeignPtr botan_rng_destroy + = mkBindings Botan_rng_t un_Botan_rng_t MkRNG getRNGForeignPtr (Internal.funPtrIgnoreRetCode botan_rng_destroy_ptr) type RNGType = ByteString diff --git a/botan-low/src/Botan/Low/Remake.hs b/botan-low/src/Botan/Low/Remake.hs index 66377e05..ffc72cce 100644 --- a/botan-low/src/Botan/Low/Remake.hs +++ b/botan-low/src/Botan/Low/Remake.hs @@ -24,7 +24,7 @@ module Botan.Low.Remake ( , mkWithObjectSetterCBytesLen ) where -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Make (allocBytesQuerying) import Botan.Low.Prelude hiding (init) @@ -155,7 +155,7 @@ Setters -- TODO: Rename mkSetterCBytesLen mkWithObjectSetterCBytesLen :: (forall a . object -> (botan -> IO a) -> IO a) - -> (botan -> ConstPtr Word8 -> CSize -> IO BotanErrorCode) + -> (botan -> ConstPtr Word8 -> CSize -> IO CInt) -> object -> ByteString -> IO () diff --git a/botan-low/src/Botan/Low/SRP6.hs b/botan-low/src/Botan/Low/SRP6.hs index a4a4506c..d57b8912 100644 --- a/botan-low/src/Botan/Low/SRP6.hs +++ b/botan-low/src/Botan/Low/SRP6.hs @@ -44,9 +44,9 @@ module Botan.Low.SRP6 ( import qualified Data.ByteString.Internal as BS import Botan.Bindings.SRP6 - -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Hash +import qualified Botan.Low.Internal as Internal import Botan.Low.Prelude import Botan.Low.PubKey import Botan.Low.Remake @@ -270,17 +270,17 @@ type SRP6BValue = ByteString type SRP6AValue = ByteString type SRP6SharedSecret = ByteString -newtype SRP6ServerSession = MkSRP6ServerSession { getSRP6ServerSessionForeignPtr :: ForeignPtr BotanSRP6ServerSessionStruct } +newtype SRP6ServerSession = MkSRP6ServerSession { getSRP6ServerSessionForeignPtr :: ForeignPtr Botan_srp6_server_session_struct } -withSRP6ServerSession :: SRP6ServerSession -> (BotanSRP6ServerSession -> IO a) -> IO a +withSRP6ServerSession :: SRP6ServerSession -> (Botan_srp6_server_session_t -> IO a) -> IO a -- | Frees all resources of the SRP-6 server session object srp6ServerSessionDestroy :: SRP6ServerSession -> IO () -createSRP6ServerSession :: (Ptr BotanSRP6ServerSession -> IO CInt) -> IO SRP6ServerSession +createSRP6ServerSession :: (Ptr Botan_srp6_server_session_t -> IO CInt) -> IO SRP6ServerSession (withSRP6ServerSession, srp6ServerSessionDestroy, createSRP6ServerSession) = mkBindings - MkBotanSRP6ServerSession runBotanSRP6ServerSession + Botan_srp6_server_session_t un_Botan_srp6_server_session_t MkSRP6ServerSession getSRP6ServerSessionForeignPtr - botan_srp6_server_session_destroy + (Internal.funPtrIgnoreRetCode botan_srp6_server_session_destroy_ptr) -- | Initialize an SRP-6 server session object srp6ServerSessionInit :: diff --git a/botan-low/src/Botan/Low/TOTP.hs b/botan-low/src/Botan/Low/TOTP.hs index bafd6832..20e013ed 100644 --- a/botan-low/src/Botan/Low/TOTP.hs +++ b/botan-low/src/Botan/Low/TOTP.hs @@ -52,8 +52,9 @@ module Botan.Low.TOTP ( import Botan.Bindings.TOTP -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Hash +import qualified Botan.Low.Internal as Internal import Botan.Low.Prelude import Botan.Low.Remake @@ -152,16 +153,16 @@ The user should then be notified. -} -newtype TOTP = MkTOTP { getTOTPForeignPtr :: ForeignPtr BotanTOTPStruct } +newtype TOTP = MkTOTP { getTOTPForeignPtr :: ForeignPtr Botan_totp_struct } -withTOTP :: TOTP -> (BotanTOTP -> IO a) -> IO a +withTOTP :: TOTP -> (Botan_totp_t -> IO a) -> IO a totpDestroy :: TOTP -> IO () -createTOTP :: (Ptr BotanTOTP -> IO CInt) -> IO TOTP +createTOTP :: (Ptr Botan_totp_t -> IO CInt) -> IO TOTP (withTOTP, totpDestroy, createTOTP) = mkBindings - MkBotanTOTP runBotanTOTP + Botan_totp_t un_Botan_totp_t MkTOTP getTOTPForeignPtr - botan_totp_destroy + (Internal.funPtrIgnoreRetCode botan_totp_destroy_ptr) type TOTPHashName = HashName diff --git a/botan-low/src/Botan/Low/Utility.hs b/botan-low/src/Botan/Low/Utility.hs index e0540615..01f21953 100644 --- a/botan-low/src/Botan/Low/Utility.hs +++ b/botan-low/src/Botan/Low/Utility.hs @@ -17,8 +17,8 @@ module Botan.Low.Utility ( constantTimeCompare , scrubMem , HexEncodingFlags - , pattern HexUpperCase - , pattern HexLowerCase + , hexUpperCaseF + , hexLowerCaseF , hexEncode , hexDecode , base64Encode @@ -26,7 +26,7 @@ module Botan.Low.Utility ( ) where import Botan.Bindings.Utility -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Make (allocBytesQuerying, allocBytesQueryingCString) import Botan.Low.Prelude import qualified Data.Text.Encoding as Text @@ -56,13 +56,9 @@ scrubMem ptr sz = throwBotanIfNegative_ $ botan_scrub_mem (castPtr ptr) (fromInt type HexEncodingFlags = Word32 -pattern - HexUpperCase - , HexLowerCase - :: HexEncodingFlags - -pattern HexUpperCase = BOTAN_FFI_HEX_UPPER_CASE -pattern HexLowerCase = BOTAN_FFI_HEX_LOWER_CASE +hexUpperCaseF, hexLowerCaseF :: HexEncodingFlags +hexUpperCaseF = 0 +hexLowerCaseF = fromIntegral bOTAN_FFI_HEX_LOWER_CASE hexEncode :: ByteString -- ^ __x__ diff --git a/botan-low/src/Botan/Low/Version.hs b/botan-low/src/Botan/Low/Version.hs index e60e69a4..7d2f7427 100644 --- a/botan-low/src/Botan/Low/Version.hs +++ b/botan-low/src/Botan/Low/Version.hs @@ -23,40 +23,45 @@ module Botan.Low.Version ( , botanVersionDatestamp ) where -import Data.Bool +import qualified Botan.Bindings.Version as BB +import Data.ByteString (ByteString) +import qualified Data.ByteString as BS +import HsBindgen.Runtime.ConstPtr (ConstPtr (..)) +import Prelude -import Botan.Bindings.Version - -import Botan.Low.Prelude - --- | Returns 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. +-- | Returns 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. botanFFIAPIVersion :: IO Int -botanFFIAPIVersion = fromIntegral <$> botan_ffi_api_version +botanFFIAPIVersion = fromIntegral <$> BB.botan_ffi_api_version --- | Returns 0 iff the FFI version specified is supported by this library. Otherwise returns -1. The expression botan_ffi_supports_api(botan_ffi_api_version()) will always evaluate to 0. A particular version of the library may also support other (older) versions of the FFI API. +-- | Returns 0 iff the FFI version specified is supported by this library. +-- Otherwise returns -1. The expression +-- botan_ffi_supports_api(botan_ffi_api_version()) will always evaluate to 0. A +-- particular version of the library may also support other (older) versions of +-- the FFI API. botanFFISupportsAPI :: Int -> IO Bool botanFFISupportsAPI version = do - supports <- botan_ffi_supports_api $ fromIntegral version + supports <- BB.botan_ffi_supports_api $ fromIntegral version -- TODO: use new @throwBotanCachingSuccess@. See issue #46 case supports of 0 -> return True _ -> return False botanVersionString :: IO ByteString -botanVersionString = botan_version_string >>= peekCString . unConstPtr +botanVersionString = BB.botan_version_string >>= BS.packCString . unConstPtr -- | Returns the major version of the library botanVersionMajor :: IO Int -botanVersionMajor = fromIntegral <$> botan_version_major +botanVersionMajor = fromIntegral <$> BB.botan_version_major -- | Returns the minor version of the library botanVersionMinor :: IO Int -botanVersionMinor = fromIntegral <$> botan_version_minor +botanVersionMinor = fromIntegral <$> BB.botan_version_minor -- | Returns the patch version of the library botanVersionPatch :: IO Int -botanVersionPatch = fromIntegral <$> botan_version_patch +botanVersionPatch = fromIntegral <$> BB.botan_version_patch -- | Returns the date this version was released as an integer YYYYMMDD, or 0 if an unreleased version botanVersionDatestamp :: IO Int -botanVersionDatestamp = fromIntegral <$> botan_version_datestamp +botanVersionDatestamp = fromIntegral <$> BB.botan_version_datestamp diff --git a/botan-low/src/Botan/Low/View.hs b/botan-low/src/Botan/Low/View.hs index 2fb95792..a3fa5ea9 100644 --- a/botan-low/src/Botan/Low/View.hs +++ b/botan-low/src/Botan/Low/View.hs @@ -14,24 +14,33 @@ section of the C Botan FFI documentation. -} module Botan.Low.View ( + Botan_view_ctx (..) -- * View binary - BotanViewBinFn - , BotanViewBinCallback + , Botan_view_bin_fn (..) + , Botan_view_bin_fn_Deref (..) , viewBin -- * View string - , BotanViewStrFn - , BotanViewStrCallback + , Botan_view_str_fn (..) + , Botan_view_str_fn_Deref (..) , viewStr ) where import System.IO -import Botan.Bindings.View +import Botan.Bindings.View as BB import Botan.Low.Prelude -viewBin :: BotanViewBinFn ctx -> (BotanViewBinCallback ctx -> IO a) -> IO a -viewBin f = bracket (mallocBotanViewBinCallback f) freeBotanViewBinCallback +import HsBindgen.Runtime.FunPtr -viewStr :: BotanViewStrFn ctx -> (BotanViewStrCallback ctx -> IO a) -> IO a -viewStr f = bracket (mallocBotanViewStrCallback f) freeBotanViewStrCallback +viewBin :: Botan_view_bin_fn_Deref -> (Botan_view_bin_fn -> IO a) -> IO a +viewBin f = + bracket + (BB.Botan_view_bin_fn <$> toFunPtr f) + (freeHaskellFunPtr . BB.un_Botan_view_bin_fn) + +viewStr :: Botan_view_str_fn_Deref -> (Botan_view_str_fn -> IO a) -> IO a +viewStr f = + bracket + (BB.Botan_view_str_fn <$> toFunPtr f) + (freeHaskellFunPtr . BB.un_Botan_view_str_fn) diff --git a/botan-low/src/Botan/Low/X509.hs b/botan-low/src/Botan/Low/X509.hs index 8336f95a..4a70932e 100644 --- a/botan-low/src/Botan/Low/X509.hs +++ b/botan-low/src/Botan/Low/X509.hs @@ -50,16 +50,16 @@ module Botan.Low.X509 ( -- * X509 Key constraints , X509KeyConstraints - , pattern NoConstraints - , pattern DigitalSignature - , pattern NonRepudiation - , pattern KeyEncipherment - , pattern DataEncipherment - , pattern KeyAgreement - , pattern KeyCertSign - , pattern CRLSign - , pattern EncipherOnly - , pattern DecipherOnly + , noConstraintsF + , digitalSignatureF + , nonRepudiationF + , keyEnciphermentF + , dataEnciphermentF + , keyAgreementF + , keyCertSignF + , cRLSignF + , encipherOnlyF + , decipherOnlyF -- * X509 Certificate revocation list @@ -76,18 +76,20 @@ module Botan.Low.X509 ( ) where +import qualified Botan.Low.Internal as Internal import Data.ByteString (packCString) import qualified Data.ByteString.Char8 as Char8 import qualified Foreign.C.String as String (withCString) import Botan.Bindings.X509 -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Hash (HashName) import Botan.Low.Make import Botan.Low.Prelude import Botan.Low.PubKey import Botan.Low.Remake +import HsBindgen.Runtime.CEnum (CEnum (fromCEnum)) -- TODO: Use *.Make module to ensure consistency @@ -97,14 +99,15 @@ import Botan.Low.Remake type DistinguishedName = ByteString -newtype X509Cert = MkX509Cert { getX509CertForeignPtr :: ForeignPtr BotanX509CertStruct } +newtype X509Cert = MkX509Cert { getX509CertForeignPtr :: ForeignPtr Botan_x509_cert_struct } -withX509Cert :: X509Cert -> (BotanX509Cert -> IO a) -> IO a +withX509Cert :: X509Cert -> (Botan_x509_cert_t -> IO a) -> IO a -- | Destroy an x509 cert object immediately x509CertDestroy :: X509Cert -> IO () -createX509Cert :: (Ptr BotanX509Cert -> IO CInt) -> IO X509Cert +createX509Cert :: (Ptr Botan_x509_cert_t -> IO CInt) -> IO X509Cert (withX509Cert, x509CertDestroy, createX509Cert) - = mkBindings MkBotanX509Cert runBotanX509Cert MkX509Cert getX509CertForeignPtr botan_x509_cert_destroy + = mkBindings Botan_x509_cert_t un_Botan_x509_cert_t MkX509Cert getX509CertForeignPtr + (Internal.funPtrIgnoreRetCode botan_x509_cert_destroy_ptr) x509CertLoad :: ByteString -- ^ __cert[]__ @@ -246,27 +249,27 @@ x509CertToString = mkGetCString withX509Cert botan_x509_cert_to_string -- pattern DecipherOnly = BOTAN_X509_CERT_KEY_CONSTRAINTS_DECIPHER_ONLY type X509KeyConstraints = CUInt -pattern NoConstraints - , DigitalSignature - , NonRepudiation - , KeyEncipherment - , DataEncipherment - , KeyAgreement - , KeyCertSign - , CRLSign - , EncipherOnly - , DecipherOnly +noConstraintsF + , digitalSignatureF + , nonRepudiationF + , keyEnciphermentF + , dataEnciphermentF + , keyAgreementF + , keyCertSignF + , cRLSignF + , encipherOnlyF + , decipherOnlyF :: X509KeyConstraints -pattern NoConstraints = NO_CONSTRAINTS -pattern DigitalSignature = DIGITAL_SIGNATURE -pattern NonRepudiation = NON_REPUDIATION -pattern KeyEncipherment = KEY_ENCIPHERMENT -pattern DataEncipherment = DATA_ENCIPHERMENT -pattern KeyAgreement = KEY_AGREEMENT -pattern KeyCertSign = KEY_CERT_SIGN -pattern CRLSign = CRL_SIGN -pattern EncipherOnly = ENCIPHER_ONLY -pattern DecipherOnly = DECIPHER_ONLY +noConstraintsF = fromCEnum NO_CONSTRAINTS +digitalSignatureF = fromCEnum DIGITAL_SIGNATURE +nonRepudiationF = fromCEnum NON_REPUDIATION +keyEnciphermentF = fromCEnum KEY_ENCIPHERMENT +dataEnciphermentF = fromCEnum DATA_ENCIPHERMENT +keyAgreementF = fromCEnum KEY_AGREEMENT +keyCertSignF = fromCEnum KEY_CERT_SIGN +cRLSignF = fromCEnum CRL_SIGN +encipherOnlyF = fromCEnum ENCIPHER_ONLY +decipherOnlyF = fromCEnum DECIPHER_ONLY -- | -- @@ -356,13 +359,14 @@ x509CertValidationStatus code = do -- TODO: Move to Botan.Low.X509.CRL after merging extended FFI -newtype X509CRL = MkX509CRL { getX509CRLForeignPtr :: ForeignPtr BotanX509CRLStruct } +newtype X509CRL = MkX509CRL { getX509CRLForeignPtr :: ForeignPtr Botan_x509_crl_struct } -withX509CRL :: X509CRL -> (BotanX509CRL -> IO a) -> IO a +withX509CRL :: X509CRL -> (Botan_x509_crl_t -> IO a) -> IO a x509CRLDestroy :: X509CRL -> IO () -createX509CRL :: (Ptr BotanX509CRL -> IO CInt) -> IO X509CRL +createX509CRL :: (Ptr Botan_x509_crl_t -> IO CInt) -> IO X509CRL (withX509CRL, x509CRLDestroy, createX509CRL) - = mkBindings MkBotanX509CRL runBotanX509CRL MkX509CRL getX509CRLForeignPtr botan_x509_crl_destroy + = mkBindings Botan_x509_crl_t un_Botan_x509_crl_t MkX509CRL getX509CRLForeignPtr + (Internal.funPtrIgnoreRetCode botan_x509_crl_destroy_ptr) x509CRLLoad :: ByteString -- ^ __crl_bits[]__ diff --git a/botan-low/src/Botan/Low/ZFEC.hs b/botan-low/src/Botan/Low/ZFEC.hs index e2a06c12..c120c6a6 100644 --- a/botan-low/src/Botan/Low/ZFEC.hs +++ b/botan-low/src/Botan/Low/ZFEC.hs @@ -32,7 +32,7 @@ import qualified Data.ByteString as ByteString import Botan.Bindings.ZFEC -import Botan.Low.Error +import Botan.Low.Error.Internal import Botan.Low.Make import Botan.Low.Prelude diff --git a/botan-low/test/Test/Botan/Low/Cipher.hs b/botan-low/test/Test/Botan/Low/Cipher.hs index 0253452c..fd8fb974 100644 --- a/botan-low/test/Test/Botan/Low/Cipher.hs +++ b/botan-low/test/Test/Botan/Low/Cipher.hs @@ -42,32 +42,32 @@ testModes = filter p (cipherModes ++ aeads) spec_cipher :: Spec spec_cipher = testSuite testModes chars $ \ cipher -> do it "can initialize a cipher encryption context" $ do - _ctx <- cipherInit cipher Encrypt + _ctx <- cipherInit cipher encryptF pass it "can initialize a cipher decryption context" $ do - _ctx <- cipherInit cipher Decrypt + _ctx <- cipherInit cipher decryptF pass it "has a name" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF _name <- cipherName ctx -- name `shouldBe` bc -- Name expands to include default parameters - need to record pass it "has a key spec" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,_,_) <- cipherGetKeyspec ctx pass it "can set the key" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx cipherSetKey ctx k pass it "has a valid default nonce length" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF _nlen <- cipherGetDefaultNonceLength ctx pass it "can validate nonce length" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF nlen <- cipherGetDefaultNonceLength ctx defaultIsValid <- cipherValidNonceLength ctx nlen defaultIsValid `shouldBe` True @@ -82,25 +82,25 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do -- absurdlyLargeIsValid `shouldBe` False pass it "can calculate output length" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF _olen <- cipherOutputLength ctx 1024 pass -- NOTE: This check should be ae / aead only it "has a tag length" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF _ <- cipherGetTagLength ctx pass it "has an update graularity" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF _ <- cipherGetUpdateGranularity ctx pass it "has an ideal update granularity" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF _ <- cipherGetIdealUpdateGranularity ctx pass if cipher `elem` aeads then it "can set the associated data" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF -- NOTE: Undocumented: A cipher must set the key before setting AD (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx @@ -111,15 +111,15 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do pass else pass it "can reset all message state" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF cipherReset ctx pass it "can clear all internal state" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF cipherClear ctx pass it "can start processing a message" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx cipherSetKey ctx k @@ -133,7 +133,7 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do pass -- TODO: More extensive testing in Botan; these are just binding sanity checks it "can one-shot / offline encipher a message" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx cipherSetKey ctx k @@ -150,7 +150,7 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do pass it "can one-shot / offline decipher a message" $ do -- Same as prior test - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx cipherSetKey ctx k @@ -165,7 +165,7 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do msg <- systemRNGGet g encmsg <- cipherEncrypt ctx msg -- Start actual test - dctx <- cipherInit cipher Decrypt + dctx <- cipherInit cipher decryptF cipherSetKey dctx k if cipher `elem` aeads then do @@ -177,7 +177,7 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do pass it "can incrementally / online encipher a message" $ do -- Same as prior test - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx cipherSetKey ctx k @@ -195,7 +195,7 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do -- NOTE: Fails for SIV, CCM because they are offline-only algorithms -- This is expected, but not reflected in the tests yet it "can incrementally / online decipher a message" $ do - ctx <- cipherInit cipher Encrypt + ctx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec ctx k <- systemRNGGet mx cipherSetKey ctx k @@ -210,7 +210,7 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do msg <- systemRNGGet (8 * g) encmsg <- cipherEncryptOnline ctx msg -- Start actual test - dctx <- cipherInit cipher Decrypt + dctx <- cipherInit cipher decryptF cipherSetKey dctx k if cipher `elem` aeads then do @@ -223,8 +223,8 @@ spec_cipher = testSuite testModes chars $ \ cipher -> do -- NOTE: Fails for SIV, CCM because they are offline-only algorithms -- This is expected, but not reflected in the tests yet it "has parity between online and offline" $ do - onlinectx <- cipherInit cipher Encrypt - offlinectx <- cipherInit cipher Encrypt + onlinectx <- cipherInit cipher encryptF + offlinectx <- cipherInit cipher encryptF (_,mx,_) <- cipherGetKeyspec onlinectx k <- systemRNGGet mx cipherSetKey onlinectx k diff --git a/botan-low/test/Test/Botan/Low/FPE.hs b/botan-low/test/Test/Botan/Low/FPE.hs index 09ae1ec2..80d9c9ba 100644 --- a/botan-low/test/Test/Botan/Low/FPE.hs +++ b/botan-low/test/Test/Botan/Low/FPE.hs @@ -48,14 +48,14 @@ newFE1Ctx :: IO (MP, FPE) newFE1Ctx = do n <- mpInit mpSetFromStr n nStr - ctx <- fpeInitFE1 n key rounds BOTAN_FPE_FLAG_NONE + ctx <- fpeInitFE1 n key rounds 0 return (n,ctx) newFE1CtxCompatMode :: IO (MP, FPE) newFE1CtxCompatMode = do n <- mpInit mpSetFromStr n nStr - ctx <- fpeInitFE1 n key rounds BOTAN_FPE_FLAG_FE1_COMPAT_MODE + ctx <- fpeInitFE1 n key rounds (fromIntegral bOTAN_FPE_FLAG_FE1_COMPAT_MODE) return (n,ctx) spec_fpe :: Spec diff --git a/botan-low/test/Test/Botan/Low/PubKey.hs b/botan-low/test/Test/Botan/Low/PubKey.hs index 6f507010..463644db 100644 --- a/botan-low/test/Test/Botan/Low/PubKey.hs +++ b/botan-low/test/Test/Botan/Low/PubKey.hs @@ -124,20 +124,20 @@ spec_pubKey = testSuite pks pkTestName $ \ (pk, param) -> do it "privKeyCheckKey" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - privKeyCheckKey privKey rng CheckKeyNormalTests + privKeyCheckKey privKey rng checkKeyNormalTestsF -- privKeyCheckKey privKey rng CheckKeyExpensiveTests pass it "privKeyExport" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - _privKeyDER <- privKeyExport privKey PrivKeyExportDER - _privKeyPEM <- privKeyExport privKey PrivKeyExportPEM + _privKeyDER <- privKeyExport privKey privKeyExportDERF + _privKeyPEM <- privKeyExport privKey privKeyExportPEMF pass it "privKeyLoad" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - privKeyDER <- privKeyExport privKey PrivKeyExportDER - privKeyPEM <- privKeyExport privKey PrivKeyExportPEM + privKeyDER <- privKeyExport privKey privKeyExportDERF + privKeyPEM <- privKeyExport privKey privKeyExportPEMF void $ privKeyLoad privKeyDER "" void $ privKeyLoad privKeyPEM "" pass @@ -155,22 +155,22 @@ spec_pubKey = testSuite pks pkTestName $ \ (pk, param) -> do rng <- rngInit "system" privKey <- privKeyCreate pk param rng pubKey <- privKeyExportPubKey privKey - void $ pubKeyCheckKey pubKey rng CheckKeyNormalTests + void $ pubKeyCheckKey pubKey rng checkKeyNormalTestsF -- pubKeyCheckKey pubKey rng CheckKeyExpensiveTests pass it "pubKeyExport" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng pubKey <- privKeyExportPubKey privKey - _pubKeyDER <- pubKeyExport pubKey PrivKeyExportDER - _pubKeyPEM <- pubKeyExport pubKey PrivKeyExportPEM + _pubKeyDER <- pubKeyExport pubKey privKeyExportDERF + _pubKeyPEM <- pubKeyExport pubKey privKeyExportPEMF pass it "pubKeyLoad" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng pubKey <- privKeyExportPubKey privKey - pubKeyDER <- pubKeyExport pubKey PrivKeyExportDER - pubKeyPEM <- pubKeyExport pubKey PrivKeyExportPEM + pubKeyDER <- pubKeyExport pubKey privKeyExportDERF + pubKeyPEM <- pubKeyExport pubKey privKeyExportPEMF void $ pubKeyLoad pubKeyDER void $ pubKeyLoad pubKeyPEM pass diff --git a/botan-low/test/Test/Botan/Low/PubKey/Sign.hs b/botan-low/test/Test/Botan/Low/PubKey/Sign.hs index 3c7f020c..ce50d1f1 100644 --- a/botan-low/test/Test/Botan/Low/PubKey/Sign.hs +++ b/botan-low/test/Test/Botan/Low/PubKey/Sign.hs @@ -55,13 +55,13 @@ spec_sign = testSuite pks pkTestName $ \ (pk, param, algo) -> do it "signCreate" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - _ctx <- signCreate privKey algo StandardFormatSignature + _ctx <- signCreate privKey algo standardFormatSignatureF -- ctxDER <- signCreate privKey algo DERFormatSignature pass it "signOutputLength" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - ctx <- signCreate privKey algo StandardFormatSignature + ctx <- signCreate privKey algo standardFormatSignatureF _sigLen <- signOutputLength ctx -- ctxDER <- signCreate privKey algo DERFormatSignature -- _ <- signOutputLength ctxDER @@ -69,13 +69,13 @@ spec_sign = testSuite pks pkTestName $ \ (pk, param, algo) -> do it "signUpdate" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - ctx <- signCreate privKey algo StandardFormatSignature + ctx <- signCreate privKey algo standardFormatSignatureF signUpdate ctx "Fee fi fo fum!" pass it "signFinish" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - ctx <- signCreate privKey algo StandardFormatSignature + ctx <- signCreate privKey algo standardFormatSignatureF signUpdate ctx "Fee fi fo fum!" _sig <- signFinish ctx rng pass diff --git a/botan-low/test/Test/Botan/Low/PubKey/Verify.hs b/botan-low/test/Test/Botan/Low/PubKey/Verify.hs index ad7687d5..dc3a55fc 100644 --- a/botan-low/test/Test/Botan/Low/PubKey/Verify.hs +++ b/botan-low/test/Test/Botan/Low/PubKey/Verify.hs @@ -66,25 +66,25 @@ spec_verify = testSuite pks pkTestName $ \ (pk, param, algo) -> do rng <- rngInit "system" privKey <- privKeyCreate pk param rng pubKey <- privKeyExportPubKey privKey - _ctx <- verifyCreate pubKey algo StandardFormatSignature + _ctx <- verifyCreate pubKey algo standardFormatSignatureF pass it "verifyUpdate" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng pubKey <- privKeyExportPubKey privKey - ctx <- verifyCreate pubKey algo StandardFormatSignature + ctx <- verifyCreate pubKey algo standardFormatSignatureF verifyUpdate ctx "Fee fi fo fum!" pass it "verifyFinish" $ do rng <- rngInit "system" privKey <- privKeyCreate pk param rng - signCtx <- signCreate privKey algo StandardFormatSignature + signCtx <- signCreate privKey algo standardFormatSignatureF signUpdate signCtx "Fee fi fo fum!" sig <- signFinish signCtx rng -- print $ "Siglen is: " <> show (ByteString.length sig) print sig pubKey <- privKeyExportPubKey privKey - verifyCtx <- verifyCreate pubKey algo StandardFormatSignature + verifyCtx <- verifyCreate pubKey algo standardFormatSignatureF verifyUpdate verifyCtx "Fee fi fo fum!" verified <- verifyFinish verifyCtx sig verified `shouldBe` True diff --git a/botan-low/test/Test/Botan/Low/Utility.hs b/botan-low/test/Test/Botan/Low/Utility.hs index 26faf129..ea0fd838 100644 --- a/botan-low/test/Test/Botan/Low/Utility.hs +++ b/botan-low/test/Test/Botan/Low/Utility.hs @@ -38,7 +38,7 @@ spec_utility = do -- it "scrubMem" $ do -- pass it "hexEncode" $ do - hex <- hexEncode message HexUpperCase + hex <- hexEncode message hexUpperCaseF hex `shouldBe` hexMessage pass it "hexDecode" $ do diff --git a/botan-low/test/Test/Botan/Low/X509.hs b/botan-low/test/Test/Botan/Low/X509.hs index baae994c..f3ccf073 100644 --- a/botan-low/test/Test/Botan/Low/X509.hs +++ b/botan-low/test/Test/Botan/Low/X509.hs @@ -152,7 +152,7 @@ spec_x509 = do pass it "x509CertAllowedUsage" $ do cert <- x509CertLoad testCert - _allowed <- x509CertAllowedUsage cert NoConstraints + _allowed <- x509CertAllowedUsage cert noConstraintsF pass it "x509CertHostnameMatch" $ do cert <- x509CertLoad testCert diff --git a/botan/src/Botan/Cipher.hs b/botan/src/Botan/Cipher.hs index 07b480c5..0476cf98 100644 --- a/botan/src/Botan/Cipher.hs +++ b/botan/src/Botan/Cipher.hs @@ -444,7 +444,7 @@ generateCipherUpdateGranularity = do cipherIdealUpdateGranularity :: Cipher -> Int cipherIdealUpdateGranularity cipher = unsafePerformIO $ do - ctx <- Low.cipherInit (cipherName cipher) Low.Encrypt + ctx <- Low.cipherInit (cipherName cipher) Low.encryptF Low.cipherGetIdealUpdateGranularity ctx {-# NOINLINE cipherIdealUpdateGranularity #-} -- NOTE: This is machine-dependent, but should stay consistent per-machine @@ -533,8 +533,8 @@ data CipherDirection deriving stock (Eq, Ord, Show) cipherDirectionFlags :: CipherDirection -> Low.CipherInitFlags -cipherDirectionFlags CipherEncrypt = Low.Encrypt -cipherDirectionFlags CipherDecrypt = Low.Decrypt +cipherDirectionFlags CipherEncrypt = Low.encryptF +cipherDirectionFlags CipherDecrypt = Low.decryptF -- TODO: data UpdateFlags = Update | Final, leave CipherFoo- terminology for Low data CipherUpdate @@ -543,8 +543,8 @@ data CipherUpdate deriving stock (Eq, Ord, Show) cipherUpdateFlags :: CipherUpdate -> Low.CipherUpdateFlags -cipherUpdateFlags CipherUpdate = Low.CipherUpdate -cipherUpdateFlags CipherFinal = Low.CipherFinal +cipherUpdateFlags CipherUpdate = Low.cipherUpdateF +cipherUpdateFlags CipherFinal = Low.cipherFinalF -- Initializers diff --git a/botan/src/Botan/Error.hs b/botan/src/Botan/Error.hs index 9df19122..9ad8d7bc 100644 --- a/botan/src/Botan/Error.hs +++ b/botan/src/Botan/Error.hs @@ -2,7 +2,7 @@ module Botan.Error ( module Botan.Low.Error ) where -import Botan.Low.Error hiding (catchBotan, handleBotan, tryBotan) +import Botan.Low.Error -- NOTE: These need MonadUnliftIO diff --git a/botan/src/Botan/PubKey.hs b/botan/src/Botan/PubKey.hs index 597fbe31..47ce844a 100644 --- a/botan/src/Botan/PubKey.hs +++ b/botan/src/Botan/PubKey.hs @@ -129,8 +129,8 @@ data PKExportFormat | PKExportPEM pkExportFormatFlags :: PKExportFormat -> Low.PrivKeyExportFlags -pkExportFormatFlags PKExportDER = Low.PrivKeyExportDER -pkExportFormatFlags PKExportPEM = Low.PrivKeyExportPEM +pkExportFormatFlags PKExportDER = Low.privKeyExportDERF +pkExportFormatFlags PKExportPEM = Low.privKeyExportPEMF -- -- Private Keys @@ -195,7 +195,7 @@ checkPrivKey :: (MonadRandomIO m) => PrivKey -> Bool -> m Bool checkPrivKey pk expensive = do rng <- getRNG -- TODO: Return false on catch error - liftIO $ Low.privKeyCheckKey pk rng (bool Low.CheckKeyNormalTests Low.CheckKeyExpensiveTests expensive) + liftIO $ Low.privKeyCheckKey pk rng (bool Low.checkKeyNormalTestsF Low.checkKeyExpensiveTestsF expensive) return True -- @@ -255,7 +255,7 @@ checkPubKey :: (MonadRandomIO m) => PubKey -> Bool -> m Bool checkPubKey pk expensive = do rng <- getRNG -- TODO: Return false on catch error - void $ liftIO $ Low.pubKeyCheckKey pk rng (bool Low.CheckKeyNormalTests Low.CheckKeyExpensiveTests expensive) + void $ liftIO $ Low.pubKeyCheckKey pk rng (bool Low.checkKeyNormalTestsF Low.checkKeyExpensiveTestsF expensive) return True diff --git a/botan/src/Botan/Utility.hs b/botan/src/Botan/Utility.hs index 7923df85..4969c0b9 100644 --- a/botan/src/Botan/Utility.hs +++ b/botan/src/Botan/Utility.hs @@ -62,8 +62,8 @@ scrubByteString bs = liftIO $ ByteString.unsafeUseAsCStringLen bs $ uncurry $ fl data HexCase = Upper | Lower hexEncodingFlags :: HexCase -> HexEncodingFlags -hexEncodingFlags Upper = Low.HexUpperCase -hexEncodingFlags Lower = Low.HexLowerCase +hexEncodingFlags Upper = Low.hexUpperCaseF +hexEncodingFlags Lower = Low.hexLowerCaseF -- TODO: Discuss ergonomics of flipping argument order hexEncode :: ByteString -> HexCase -> Text diff --git a/botan/src/Botan/X509.hs b/botan/src/Botan/X509.hs index 382fe835..a14e0236 100644 --- a/botan/src/Botan/X509.hs +++ b/botan/src/Botan/X509.hs @@ -111,15 +111,15 @@ instance (Enum KeyConstraint) where fromEnum :: KeyConstraint -> Int fromEnum NoConstraints = 0 - fromEnum DigitalSignature = fromIntegral Low.DigitalSignature -- 32768 - fromEnum NonRepudiation = fromIntegral Low.NonRepudiation -- 16384 - fromEnum KeyEncipherment = fromIntegral Low.KeyEncipherment -- 8192 - fromEnum DataEncipherment = fromIntegral Low.DataEncipherment -- 4096 - fromEnum KeyAgreement = fromIntegral Low.KeyAgreement -- 2048 - fromEnum KeyCertSign = fromIntegral Low.KeyCertSign -- 1024 - fromEnum CRLSign = fromIntegral Low.CRLSign -- 512 - fromEnum EncipherOnly = fromIntegral Low.EncipherOnly -- 256 - fromEnum DecipherOnly = fromIntegral Low.DecipherOnly -- 128 + fromEnum DigitalSignature = fromIntegral Low.digitalSignatureF -- 32768 + fromEnum NonRepudiation = fromIntegral Low.nonRepudiationF -- 16384 + fromEnum KeyEncipherment = fromIntegral Low.keyEnciphermentF -- 8192 + fromEnum DataEncipherment = fromIntegral Low.dataEnciphermentF -- 4096 + fromEnum KeyAgreement = fromIntegral Low.keyAgreementF -- 2048 + fromEnum KeyCertSign = fromIntegral Low.keyCertSignF -- 1024 + fromEnum CRLSign = fromIntegral Low.cRLSignF -- 512 + fromEnum EncipherOnly = fromIntegral Low.encipherOnlyF -- 256 + fromEnum DecipherOnly = fromIntegral Low.decipherOnlyF -- 128 fromEnum (KeyConstraints (kc:kcs)) = fromEnum kc .|. fromEnum (KeyConstraints kcs) fromEnum _ = error "fromEnum: KeyConstraint" diff --git a/cabal.project b/cabal.project index 1e84689f..9c765d42 100644 --- a/cabal.project +++ b/cabal.project @@ -1,7 +1,7 @@ index-state: -- Bump this if you need newer packages from Hackage -- current date: REASON - , hackage.haskell.org 2025-11-17T00:00:00Z + , hackage.haskell.org 2025-12-11T00:00:00Z packages: @@ -16,3 +16,11 @@ packages: tests: True benchmarks: True + +source-repository-package + type: git + location: https://github.com/well-typed/hs-bindgen + tag: 81ad5ed8a0f71b2dbbec8c773e14ed53960a0bd4 + subdir: + hs-bindgen-runtime + c-expr-runtime diff --git a/doc/VersionSupport.md b/doc/VersionSupport.md new file mode 100644 index 00000000..58878889 --- /dev/null +++ b/doc/VersionSupport.md @@ -0,0 +1,170 @@ +# Version support + +The Botan Haskell packages aim to provide low- and high-level bindings for the +Botan C++ library, with support for at least version 3.0.0 of the C++ library. +The C++ library has had numerous releases since then. The question arises: how +should the Haskell packages support multiple versions of the C++ library? This +document describes how we do this. + +## Haskell package versions vs. C++ library versions + +For versioning Haskell packages with respect to the C++ library versions that it +supports, there are two main options we considered: + +1. One Haskell packages release for one C++ library release +2. One Haskell packages release for many C++ library releases + +In the first option for example, if version `x.y.z` of the C++ library is +released, then we release version `x.y.z` of the Haskell packages *in lockstep*. +What is nice about this approach is that depending on version `x.y.z` of the +Haskell packages would give you exactly the features of version `x.y.z` of the +Botan library. The main downside is that the Haskell packages can not easily +evolve separately from the C++ library. If a Haskell package makes any change +(breaking, non-breaking, bug-fix) that is not related to changes in the C++ +library, what new version should the Haskell package get? If we do come up with +a versioning policy that we could use to signal Haskell-package-only changes, +then it would be a non-standard versioning policy that would likely be confusing +to users. Moreover, the fact that there are three separate packages exacerbate +the problem, because each package might want to make its own +Haskell-package-only changes, and it is highly likely that the higher-level +packages would so more frequently than the lower-level packages. Lastly, the +versioning policy would be rather constraining for developers, which could hurt +development of the Haskell packages. + +In the second option, the version of the Haskell packages is completely +decoupled from the version of the C++ library. Because the same Haskell package +now supports many C++ library versions, we would have to make sure that we (or +users) can guard against using C++ library features that are not available. In +option 1, this would be as simple as using proper version constraints in the +`build-depends` fields of a cabal file. In option 2, we can achieve this at +compile-time using conditional compilation with CPP based on the C++ library +version. The higher-level libraries can likely do the conditional compilation +themselves so that users do not have to deal with CPP. Users of lower-level +libraries would likely still have to use CPP. + +We opted to go with option 2: it is more flexible than option 1, and the cost of +having to use CPP seems minor, specially considering that the CPP can be hidden +in higher-level libraries. + +## Design overview + +For `botan-bindings`, we use `hs-bindgen` to pre-generate the Haskell bindings +for each C++ library version that we know about. These pre-generated modules are +included in the package's distributed files. When `botan-bindings` is built, it +runs a custom setup-hooks script that augments the package's configuration +phase. This script detect the installed C++ library version, and it includes the +pre-generated bindings corresponding to that version if possible. If the +installed C++ library version is a version that `botan-bindings` does not +recognize yet, then we have no pre-generated bindings for this version. In such +cases, the script tries to find the most recent compatible version that it does +have pre-generated bindings for, and the script includes those bindings instead. +This facilitates `botan-bindings` having some degree of forward compatibility +with respect to the C++ library. Moreover, the custom script generates and +includes a C header file that contains C macros for the installed C++ library +version *and* the C++ library version that we included pre-generated bindings +for. These two versions might not match, as explained before. These macros can +then be used with CPP for conditional compilation. + +`botan-bindings` conditionally exports bindings based on the installed C++ +library version. If a feature is only available on certain versions of the C++ +library, then it will also only be available in `botan-bindings` if the right +version of the C++ library is installed. For this reason, any users of +`botan-bindings` should use conditional compilation to make sure the feature is +available. + +## Adding support for new versions + +Let's assume `botan-X-Y-Z` has been released for the C++ library and we want to +support it in `botan-bindings`. Follow these steps to add suport for the new +version: + +* Add the new version to the `botan-bindings/KnownVersions.cfg` file. This file + is used by the setup-hooks script. The contents of the file are parsed as a + Haskell list, and so the syntax should match that of a Haskell list. The + syntax of a single version in this list is: + +```hs +Version X Y Z +``` + +* Update `./scripts/generate-bindings.sh` with an invocation of the + `./scripts/generate-bindings.hs` script for the new version. For example: + +```sh +cabal run ./scripts/generate-bindings.hs -- generate -v X.Y.Z -m "Botan.Bindings.Generated.Botan_X_Y_Z" +``` + +* Run `./scripts/generate-bindings.sh` to generate bindings for the new version. + This will re-generate bindings for all previously known versions as well, but + those should not change unless a new version of `hs-bindgen` is used (see + [Using a new version of `hs-bindgen`](#using-a-new-version-of-hs-bindgen)). + +```sh +./scripts/generate-bindings.sh +``` + +* Run `./scripts/format-stylish-haskell.sh` to format the generated bindings. + +```sh +./scripts/format-stylish-haskell.sh +``` + +We use re-export modules to aggregate conditional imports of bindings for +specific versions, so that other modules in `botan-bindings` can just import the +aggregate module. The following steps make sure these re-export modules are +updated with the new version: + +* Add a new conditional import to the list of conditional imports in the + `Botan.Binding.Generated` module. The list conditional imports should be + sorted in descending order of version number. This would look something like + this if the new version is the highest version number: + +```hs +#if MIN_BOTAN_VERSION_BINDINGS(X,Y,Z) +import Botan.Bindings.Generated.Botan_X_Y_Z as Reexports +#elif ... +``` + +* Do a similar thing in the `Botan.Bindings.Generated.FunPtr` module: + +```hs +#if MIN_BOTAN_VERSION_BINDINGS(X,Y,Z) +import Botan.Bindings.Generated.Botan_X_Y_Z.FunPtr as Reexports +#elif ... +``` + +* Do a similar thing in the `Botan.Bindings.Generated.Safe` module: + +```hs +#if MIN_BOTAN_VERSION_BINDINGS(X,Y,Z) +import Botan.Bindings.Generated.Botan_X_Y_Z.Safe as Reexports +#elif ... +``` + +* Do a similar thing in the `Botan.Bindings.Generated.Unsafe` module: + +```hs +#if MIN_BOTAN_VERSION_BINDINGS(X,Y,Z) +import Botan.Bindings.Generated.Botan_X_Y_Z.Unsafe as Reexports +#elif ... +``` + +At this point, there are now Haskell bindings for the new version in the +package, their definitions are re-exported by the aggregate modules, and the +setup-hooks script will automatically include them in the build plan and compile +them based on the installed version of the C++ library. However, any new +features (functions / types) in the new bindings are not publicly exported yet. + +* TODO: describe how to publicy export new features. + +* TODO: the C FFI uses strings to select algorithms, but these strings are not + exported as values or macros by the FFI. Instead, we should manually add + pattern synonyms for such strings to botan-bindings. Describe how this should + work. + +* TODO: describe how to test the new version in CI + +## Using a new version of `hs-bindgen` + +* TODO: describe how to handle upgrading `hs-bindgen`, which might change the + pre-generated bindings. \ No newline at end of file diff --git a/scripts/generate-bindings.hs b/scripts/generate-bindings.hs new file mode 100755 index 00000000..d60eb596 --- /dev/null +++ b/scripts/generate-bindings.hs @@ -0,0 +1,261 @@ +#!/usr/bin/env cabal +{- cabal: +build-depends: + base >=4.16 && <4.22 + , filepath + , optparse-applicative + , process + , split + , temporary +-} + +{-# OPTIONS_GHC + -Wall + -Wcompat + -Wincomplete-uni-patterns + -Wincomplete-record-updates + -Wpartial-fields + -Widentities + -Wredundant-constraints + -Wmissing-export-lists + -Wno-unticked-promoted-constructors + -Wunused-packages + -Werror=missing-deriving-strategies + #-} + +{-# OPTIONS_GHC -Werror #-} + +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE LambdaCase #-} + +module Main (main) where + +import Control.Monad (forM_) +import Data.List.Split (splitOn) +import Data.Word (Word8) +import Options.Applicative +import System.Exit (ExitCode (..), exitFailure) +import System.FilePath ((<.>), ()) +import System.IO.Temp (withSystemTempDirectory) +import System.Process +import Text.Printf (printf) +import Text.Read (readMaybe) + +{------------------------------------------------------------------------------- + Main +-------------------------------------------------------------------------------} + +main :: IO () +main = do + cmd <- customExecParser (prefs disambiguate) parseCmd' + + case cmd of + PrintVersions -> do + section "Printing known versions of Botan..." + knownVersions <- readKnownVersions + forM_ knownVersions $ putStrLn . prettyVersion + Generate opts -> do + let v = version opts + printf "Selected version %s\n" (prettyVersion v) + + section "Creating a temporary directory..." + withSystemTempDirectory "releases" $ \tmpDir -> do + putStrLn tmpDir + + section "Downloading Botan..." + callProcess "curl" [mkDownloadURL v, "-o", mkTarballFile tmpDir v] + + -- TODO: verify the release's signature + + section "Unpacking..." + callProcess "tar" ["xf", mkTarballFile tmpDir v, "-C", tmpDir] + + section "Building and installing..." + procInstall opts tmpDir + + section "Generating Haskell bindings..." + procHsBindgen opts tmpDir + + section "Success!" + +{------------------------------------------------------------------------------- + Options +-------------------------------------------------------------------------------} + +parseCmd' :: ParserInfo Cmd +parseCmd' = info (parseCmd <**> helper) + ( fullDesc + <> progDesc "Generate Haskell bindings for the Botan library" + ) + +data Cmd = PrintVersions | Generate Options + +data Options = Options { + version :: Version + , outputDirectory :: FilePath + , baseModuleName :: String + } + +parseCmd :: Parser Cmd +parseCmd = subparser + ( command "print-known-versions" + (info + (PrintVersions <$ pure ()) + (progDesc "Print all known Botan versions")) + <> command "generate" + (info + (Generate <$> parseOptions <**> helper) + (progDesc "Generate Haskell bindings")) + ) + +parseOptions :: Parser Options +parseOptions = Options + <$> option parseVersion + ( long "version" + <> short 'v' + <> metavar "VERSION" + <> help "Botan version, e.g., \"3.9.0\"" + ) + <*> strOption + ( long "output" + <> short 'o' + <> metavar "DIR" + <> value "botan-bindings/src-generated/" + <> showDefault + <> help "Output directory for generated bindings, e.g., \"foo/bar/baz/\"" + ) + <*> strOption + ( long "module" + <> short 'm' + <> metavar "NAME" + <> value "Botan.Bindings.Generated" + <> showDefault + <> help "Base module name for generated bindings, e.g., \"Foo.Bar.Baz\"" + ) + +parseVersion :: ReadM Version +parseVersion = maybeReader $ \s -> + case splitOn "." s of + [major, minor, patch] -> + Version <$> readMaybe major <*> readMaybe minor <*> readMaybe patch + _ -> Nothing + +{------------------------------------------------------------------------------- + Building the C++ library +-------------------------------------------------------------------------------} + +procInstall :: Options -> FilePath -> IO () +procInstall opts dir = do + subsection "Configuring..." + putStrLn $ showCommandForUser configureCmd configureArgs + checkFailure "'configure' step failed" $ runProc configureProc + subsection "Building..." + checkFailure "'make build' step failed" $ runProc makeBuildProc + subsection "Installing..." + checkFailure "'make install' step failed" $ runProc makeInstallProc + where + configureCmd = "./configure.py" + configureArgs = [ + "--compiler-cache=ccache" + , "--minimized-build" + , "--without-documentation" + , "--build-targets=shared" + , "--enable-modules=ffi,ec_group" + , "--prefix=" ++ mkInstallDir dir (version opts) + ] + configureProc = setCwd $ proc configureCmd configureArgs + + makeBuildProc = setCwd $ proc "make" [] + makeInstallProc = setCwd $ proc "make" ["install"] + + setCwd cp = cp { + cwd = Just $ mkSourceDir dir (version opts) + } + +{------------------------------------------------------------------------------- + Generating Haskell bindings +-------------------------------------------------------------------------------} + +procHsBindgen :: Options -> FilePath -> IO () +procHsBindgen opts dir = do + putStrLn $ showCommandForUser hsBindgenCmd hsBindgenArgs + checkFailure "'hs-bindgen-cli' failed" (runProc hsBindgenProc) + where + hsBindgenCmd = "hs-bindgen-cli" + hsBindgenArgs = [ + "preprocess" + , "-I" <> mkIncludeDir dir (version opts) + , "--unique-id=botan-bindings" + , "--hs-output-dir=" <> outputDirectory opts + , "--module=" <> baseModuleName opts + , "--create-output-dirs" + , "--overwrite-files" + , "botan/ffi.h" + ] + hsBindgenProc = proc hsBindgenCmd hsBindgenArgs + +{------------------------------------------------------------------------------- + Process +-------------------------------------------------------------------------------} + +runProc :: CreateProcess -> IO ExitCode +runProc cp = withCreateProcess cp $ \_ _ _ ph -> waitForProcess ph + +checkFailure :: String -> IO ExitCode -> IO () +checkFailure msg k = k >>= \case + ExitSuccess -> pure () + ExitFailure ret -> do + print ("[" <> show ret <> "] " <> msg) + exitFailure + +{------------------------------------------------------------------------------- + Logging +-------------------------------------------------------------------------------} + +section :: String -> IO () +section s = putStrLn ("<<<>>> " <> s <> " <<<>>>") + +subsection :: String -> IO () +subsection s = putStrLn ("<<>> " <> s <> " <<>>") + +{------------------------------------------------------------------------------- + Versions +-------------------------------------------------------------------------------} + +data Version = Version Major Minor Patch + deriving stock (Show, Eq, Ord, Read) + +type Major = Word8 +type Minor = Word8 +type Patch = Word8 + +readKnownVersions :: IO [Version] +readKnownVersions = do + contents <- readFile "botan-bindings/KnownVersions.cfg" + pure $ read contents + +prettyVersion :: Version -> String +prettyVersion (Version major minor patch) = show major <> "." <> show minor <> "." <> show patch + +prettyFullVersion :: Version -> String +prettyFullVersion v = "Botan-" <> prettyVersion v + +{------------------------------------------------------------------------------- + Paths +-------------------------------------------------------------------------------} + +-- | For example: @https://botan.randombit.net/releases/Botan-3.9.0.tar.xz@ +mkDownloadURL :: Version -> String +mkDownloadURL v = "https://botan.randombit.net/releases/" <> prettyFullVersion v <.> "tar" <.> "xz" + +mkTarballFile :: FilePath -> Version -> FilePath +mkTarballFile dir v = dir prettyFullVersion v <.> "tar" <.> "xz" + +mkSourceDir :: FilePath -> Version -> FilePath +mkSourceDir dir v = dir prettyFullVersion v + +mkInstallDir :: FilePath -> Version -> FilePath +mkInstallDir dir v = dir prettyFullVersion v <.> "install" + +mkIncludeDir :: FilePath -> Version -> FilePath +mkIncludeDir dir v = mkInstallDir dir v "include/botan-3" diff --git a/scripts/generate-bindings.sh b/scripts/generate-bindings.sh new file mode 100755 index 00000000..85206b25 --- /dev/null +++ b/scripts/generate-bindings.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +# TODO: check hs-bindgen version + +cabal build ./scripts/generate-bindings.hs +cabal run ./scripts/generate-bindings.hs -- generate -v 3.10.0 -m "Botan.Bindings.Generated.Botan_3_10_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.9.0 -m "Botan.Bindings.Generated.Botan_3_9_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.8.1 -m "Botan.Bindings.Generated.Botan_3_8_1" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.8.0 -m "Botan.Bindings.Generated.Botan_3_8_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.7.1 -m "Botan.Bindings.Generated.Botan_3_7_1" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.7.0 -m "Botan.Bindings.Generated.Botan_3_7_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.6.1 -m "Botan.Bindings.Generated.Botan_3_6_1" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.6.0 -m "Botan.Bindings.Generated.Botan_3_6_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.5.0 -m "Botan.Bindings.Generated.Botan_3_5_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.4.0 -m "Botan.Bindings.Generated.Botan_3_4_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.3.0 -m "Botan.Bindings.Generated.Botan_3_3_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.2.0 -m "Botan.Bindings.Generated.Botan_3_2_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.1.1 -m "Botan.Bindings.Generated.Botan_3_1_1" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.1.0 -m "Botan.Bindings.Generated.Botan_3_1_0" +cabal run ./scripts/generate-bindings.hs -- generate -v 3.0.0 -m "Botan.Bindings.Generated.Botan_3_0_0"